国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Purple Pi OH Android11 ROOT 方法

觸覺智能 ? 2023-08-04 08:40 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

為了讓應(yīng)用程序可以直接調(diào)用su執(zhí)行系統(tǒng)命令和獲取root權(quán)限,本文基于Purple Pi OH主板的Android SDK,介紹如果修改和編譯一個root版本的Android11系統(tǒng),以下為sdk源碼修改方法。

Purple Pi OH作為一款兼容樹莓派的開源主板,采用瑞芯微RK3566 (Cortex-A55) 四核64位超強(qiáng)CPU,主頻最高達(dá)1.8 GHz,算力高達(dá)1Tops,支持INT8/INT16,支持TensorFlow/MXNet/PyTorch/Caffe框架,多路視頻輸出和輸入,支持4K、H.265/H.264視頻解碼,接口豐富。

玩法豐富,支持OpenHarmony、Ubuntu、Debian、Android等多種系統(tǒng),提供豐富開源資料。

產(chǎn)品規(guī)格書:Purple Pi OH 產(chǎn)品手冊

88afcecc-325f-11ee-bbcf-dac502259ad0.png88ed18cc-325f-11ee-bbcf-dac502259ad0.png

關(guān)閉selinux

device/rockchip/common/BoardConfig.mk

diff --git a/device/rockchip/common/BoardConfig.mkb/device/rockchip/common/BoardConfig.mk
indexe03c54f6a0..4fc6dc9868 100755
--- a/device/rockchip/common/BoardConfig.mk
+++ b/device/rockchip/common/BoardConfig.mk
@@ -59,7+59,7@@ BOARD_BOOT_HEADER_VERSION ?= 2
BOARD_MKBOOTIMG_ARGS :=
BOARD_PREBUILT_DTBOIMAGE ?= $(TARGET_DEVICE_DIR)/dtbo.img
BOARD_ROCKCHIP_VIRTUAL_AB_ENABLE ?= false
-BOARD_SELINUX_ENFORCING ?= true
+BOARD_SELINUX_ENFORCING ?= false

# Use the non-open-sourceparts, ifthey're present

注釋用戶組權(quán)限檢測system/extras/su/su.cpp

diff --git a/system/extras/su/su.cpp b/system/extras/su/su.cpp
index 1a1ab6bf40..af3d2a68c7 100644
--- a/system/extras/su/su.cpp
+++ b/system/extras/su/su.cpp
@@ -80,8+80,8@@ voidextract_uidgids(constchar* uidgids, uid_t* uid, gid_t* gid, gid_t* gids, i
}

intmain(intargc, char** argv){
- uid_tcurrent_uid = getuid();
- if(current_uid != AID_ROOT && current_uid != AID_SHELL) error(1, 0, "not allowed");
+ //uid_t current_uid = getuid();
+ //if (current_uid != AID_ROOT && current_uid != AID_SHELL) error(1, 0, "not allowed");

// Handle -h and --help.
++argv;

給su文件默認(rèn)授予root權(quán)限

system/core/libcutils/fs_config.cpp

diff --git a/system/core/libcutils/fs_config.cpp b/system/core/libcutils/fs_config.cpp
index 5805a4d19b..92e93e76ff 100644
--- a/system/core/libcutils/fs_config.cpp
+++ b/system/core/libcutils/fs_config.cpp
@@ -188,7+188,7@@ staticconststructfs_path_configandroid_files[] = {
// the following two files are INTENTIONALLY set-uid, but they
// are NOT included on user builds.
{ 06755, AID_ROOT, AID_ROOT, 0, "system/xbin/procmem"},
- { 04750, AID_ROOT, AID_SHELL, 0, "system/xbin/su"},
+ { 06755, AID_ROOT, AID_SHELL, 0, "system/xbin/su"},

// the following files have enhanced capabilities and ARE included
// in user builds.

frameworks/base/core/jni/com_android_internal_os_Zygote.cpp

diff --git a/frameworks/base/core/jni/com_android_internal_os_Zygote.cpp b/frameworks/base/core/jni/com_android_internal_os_Zygote.cpp
index 9eede83e21..d161e6fad3 100644
--- a/frameworks/base/core/jni/com_android_internal_os_Zygote.cpp
+++ b/frameworks/base/core/jni/com_android_internal_os_Zygote.cpp
@@ -656,7+656,7@@ staticvoidEnableKeepCapabilities(fail_fn_t fail_fn) {
}

staticvoidDropCapabilitiesBoundingSet(fail_fn_t fail_fn) {
- for(inti = 0; prctl(PR_CAPBSET_READ, i, 0, 0, 0) >= 0; i++) {;
+/* for (int i = 0; prctl(PR_CAPBSET_READ, i, 0, 0, 0) >= 0; i++) {;
if (prctl(PR_CAPBSET_DROP, i, 0, 0, 0) == -1) {
if (errno == EINVAL) {
ALOGE("prctl(PR_CAPBSET_DROP) failed with EINVAL. Please verify "
@@ -665,7 +665,7 @@ static void DropCapabilitiesBoundingSet(fail_fn_t fail_fn) {
fail_fn(CREATE_ERROR("prctl(PR_CAPBSET_DROP, %d) failed: %s", i, strerror(errno)));
}
}
- }
+ }*/
}

kernel/security/commoncap.c

diff --git a/kernel/security/commoncap.c b/kernel/security/commoncap.c
index 876cfe01d9..ce87b1b780 100644
--- a/kernel/security/commoncap.c
+++ b/kernel/security/commoncap.c
@@ -1166,12+1166,12@@ intcap_task_setnice(struct task_struct *p, intnice)
staticintcap_prctl_drop(unsignedlongcap)
{
structcred*new;
-
+/*
if (!ns_capable(current_user_ns(), CAP_SETPCAP))
return -EPERM;
if (!cap_valid(cap))
return -EINVAL;
-
+*/
new= prepare_creds();
if(!new)
return-ENOMEM;

編譯鏡像

修改后需要重新編譯內(nèi)核和AOSP,Android編譯需要選擇rk3566_r-userdebug版本

sourcebuild/envsetup.sh
lunch rk3566_r-userdebug

檢測驗證root是否成功

可在應(yīng)用程序中調(diào)用 /system/xbin/su來測試系統(tǒng)是否root成功

publicstaticvoidRootCommand() {
Process process = null;
try{
process = Runtime.getRuntime().exec("/system/xbin/su");
process.waitFor();
} catch(IOException | InterruptedException e) {
e.printStackTrace();
} finally{
if(process != null) {
process.destroy();
}
}
}

root的系統(tǒng)可正常執(zhí)行,而非root的系統(tǒng)會提示沒有權(quán)限

java.io.IOException: Cannot run program "/system/xbin/su": error=13, Permission denied

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    4024

    瀏覽量

    133969
  • 主板
    +關(guān)注

    關(guān)注

    54

    文章

    2360

    瀏覽量

    76807
  • root
    +關(guān)注

    關(guān)注

    1

    文章

    86

    瀏覽量

    22098
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    技術(shù)分享 | RK3568 Android11 如何實現(xiàn)自啟動應(yīng)用

    隨著Android版本的不斷升級,對于應(yīng)用權(quán)限的管理會更加苛刻。我司IAC-RK3568-Kit開發(fā)板默認(rèn)搭載Android11,相比較之前RK3288的產(chǎn)品安卓版本變更較大,有些客戶反饋之前
    的頭像 發(fā)表于 02-05 17:26 ?396次閱讀
    技術(shù)分享 | RK3568 <b class='flag-5'>Android11</b> 如何實現(xiàn)自啟動應(yīng)用

    RK3568 Android11編譯環(huán)境搭建及報錯解決指南

    在嵌入式開發(fā)領(lǐng)域,RK3568 芯片憑借其出色的性能被廣泛應(yīng)用。基于 RK3568 進(jìn)行 Android11 系統(tǒng)的開發(fā),首先要搭建好編譯環(huán)境。本文將詳細(xì)介紹在 Ubuntu20.04 系統(tǒng)上搭建 RK3568 Android11 編譯環(huán)境的過程,并針對常見的報錯給出解決
    的頭像 發(fā)表于 02-04 17:37 ?1693次閱讀
    RK3568 <b class='flag-5'>Android11</b>編譯環(huán)境搭建及報錯解決指南

    觸覺智能Purple Pi OH首發(fā)開源鴻蒙6.0 XTS認(rèn)證,開源鴻蒙正式開啟6.0時代!

    11月28日,觸覺智能PurplePiOH開發(fā)板通過了開源鴻蒙OpenHarmony6.0ReleaseXTS生態(tài)兼容認(rèn)證,成為了開發(fā)板類別首個通過的產(chǎn)品與廠商!(觸覺智能PurplePiOH開發(fā)板
    的頭像 發(fā)表于 11-28 18:45 ?1050次閱讀
    觸覺智能<b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b>首發(fā)開源鴻蒙6.0 XTS認(rèn)證,開源鴻蒙正式開啟6.0時代!

    如何基于開發(fā)板RK3568 Android 11強(qiáng)制所有應(yīng)用橫屏展示

    RK3568 Android 11強(qiáng)制所有應(yīng)用橫屏展示,1、打開frameworks/base/core/java/android/content/pm/parsing/component
    的頭像 發(fā)表于 11-07 16:07 ?729次閱讀
    如何基于開發(fā)板RK3568 <b class='flag-5'>Android</b> <b class='flag-5'>11</b>強(qiáng)制所有應(yīng)用橫屏展示

    觸覺智能Purple Pi OH開發(fā)板率先適配OpenHarmony6.0 Release,鴻蒙明星開發(fā)板

    2025年9月19日,在官網(wǎng)上線開源鴻蒙OpenHarmony6.0Release僅13天,觸覺智能宣布旗下PurplePiOH開發(fā)板成功完成OpenHarmony6.0Release系統(tǒng)適配。這一速度,彰顯了觸覺智能對開源鴻蒙硬件生態(tài)的堅定支持和強(qiáng)大技術(shù)實力。作為開源鴻蒙明星開發(fā)板,工程師背負(fù)榮譽(yù)與時間賽跑,第一時間就投入了適配工作,力求在最短時間內(nèi)完成,
    的頭像 發(fā)表于 10-29 08:00 ?823次閱讀
    觸覺智能<b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b>開發(fā)板率先適配OpenHarmony6.0 Release,鴻蒙明星開發(fā)板

    技術(shù)分享 | RK3568 Android預(yù)安裝應(yīng)用

    很多客戶在使用安卓系統(tǒng)時希望自己的業(yè)務(wù)APP能夠第一時間開機(jī)啟動,并且內(nèi)置在系統(tǒng)當(dāng)中。今天就以我司IAC-RK3568-Kit為例,分享如何在Android11系統(tǒng)中內(nèi)置自己的業(yè)務(wù)APP。購買我司
    的頭像 發(fā)表于 08-06 17:23 ?848次閱讀
    技術(shù)分享 | RK3568 <b class='flag-5'>Android</b>預(yù)安裝應(yīng)用

    嘗鮮開源鴻蒙6.0?試試明星開發(fā)板Purple Pi OH

    6月19日,開源鴻蒙官方發(fā)布了OpenHarmony6.0Beta1版本,觸覺智能緊隨其后,率先在PurplePiOH開發(fā)板進(jìn)行適配
    的頭像 發(fā)表于 07-11 18:42 ?1566次閱讀
    嘗鮮開源鴻蒙6.0?試試明星開發(fā)板<b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b>

    ArkUI-X與Android橋接通信之方法回調(diào)

    平臺橋接用于客戶端(ArkUI)和平臺(Android或iOS)之間傳遞消息,即用于ArkUI與平臺雙向數(shù)據(jù)傳遞、ArkUI側(cè)調(diào)用平臺的方法、平臺調(diào)用ArkUI側(cè)的方法。本文主要介紹Andro
    發(fā)表于 06-08 22:16

    ArkUI-X與Android消息通信

    平臺橋接用于客戶端(ArkUI)和平臺(Android或iOS)之間傳遞消息,即用于ArkUI與平臺雙向數(shù)據(jù)傳遞、ArkUI側(cè)調(diào)用平臺的方法、平臺調(diào)用ArkUI側(cè)的方法。本文主要介紹Andro
    發(fā)表于 06-08 22:15

    3步精簡Android11預(yù)裝!瑞芯微開發(fā)板系統(tǒng)瘦身實戰(zhàn)

    本文介紹瑞芯微開發(fā)板安卓Android11系統(tǒng)預(yù)裝應(yīng)用裁剪的方法,使用觸覺智能PurplePiOH鴻蒙開發(fā)板演示,搭載了瑞芯微RK3566芯片,4核1.8Ghz+1T算力NPU;類樹莓派
    的頭像 發(fā)表于 06-06 17:57 ?1254次閱讀
    3步精簡<b class='flag-5'>Android11</b>預(yù)裝!瑞芯微開發(fā)板系統(tǒng)瘦身實戰(zhàn)

    Android In Docker 中 Magisk 的部署與簡單應(yīng)用指南

    Magisk—系統(tǒng)級“魔法面具”Magisk(MagicMask)是由開發(fā)者topjohnwu開發(fā)的開源Android框架,自2016年發(fā)布以來已成為最受歡迎的Android系統(tǒng)修改工具之一。其核心
    的頭像 發(fā)表于 05-28 16:42 ?2149次閱讀
    <b class='flag-5'>Android</b> In Docker 中 Magisk 的部署與簡單應(yīng)用指南

    粘接聚酰亞胺PI膜除了使用PI膜專用UV膠粘接,還可以使用熱固化環(huán)氧膠來解決!

    氧膠也是粘接聚酰亞胺(PI)膜的一種常見方法。熱固化環(huán)氧膠是一種在加熱的條件下固化成堅固狀態(tài)的膠水,在涂抹或涂覆膠水后,通過加熱,膠水中的化學(xué)反應(yīng)被觸發(fā),導(dǎo)致其硬
    的頭像 發(fā)表于 05-07 09:11 ?1474次閱讀
    粘接聚酰亞胺<b class='flag-5'>PI</b>膜除了使用<b class='flag-5'>PI</b>膜專用UV膠粘接,還可以使用熱固化環(huán)氧膠來解決!

    如何在i.mx8mq的android13上啟用Widevine DRM?

    SOC:i.mx8mq 代碼: android-13.0.0_2.0.0 1. 我們還有另一個 Android 11 代碼庫,它支持 Widevine。 Android
    發(fā)表于 04-11 06:44

    鴻蒙北向開發(fā)OpenHarmony5.0 DevEco Studio開發(fā)工具安裝與配置

    本文介紹OpenHarmony5.0 DevEco Studio開發(fā)工具安裝與配置,鴻蒙北向開發(fā)入門必備!由觸覺智能Purple Pi OH鴻蒙開發(fā)板演示。搭載了瑞芯微RK3566四核處理器,支持開源鴻蒙OpenHarmony3
    的頭像 發(fā)表于 03-28 18:05 ?1620次閱讀
    鴻蒙北向開發(fā)OpenHarmony5.0 DevEco Studio開發(fā)工具安裝與配置

    Raspberry Pi上使用IR v11及OpenVINO? 2021.3后不兼容怎么辦?

    PYTHONPATH=\"$PWD\" && python export.py --weights--img 512 --include openvino 轉(zhuǎn)換后的 IR v11 模型與 Raspberry Pi 上的 OpenVINO? 2021.3
    發(fā)表于 03-06 07:14