文章目录

  • 开发平台基本信息
  • 问题描述
  • 解决方法

开发平台基本信息

芯片: MSM8953_64
版本: Android 10
kernel: msm-4.9

问题描述

user版本默认是不允许root以及remount的,但是,作为硬件定制厂商,客户往往需要root权限去执行一些系统级别的权限,所以,需要将user版本的root权限开放出来。

解决方法

diff --git a/build/make/core/main.mk b/build/make/core/main.mk
index c7df0f7..f09692b 100755
--- a/build/make/core/main.mk
+++ b/build/make/core/main.mk
@@ -283,11 +283,11 @@ enable_target_debugging := truetags_to_install :=ifneq (,$(user_variant))# Target is secure in user builds.
-  ADDITIONAL_DEFAULT_PROPERTIES += ro.secure=1
+  ADDITIONAL_DEFAULT_PROPERTIES += ro.secure=0ADDITIONAL_DEFAULT_PROPERTIES += security.perf_harden=1ifeq ($(user_variant),user)
-    ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=1
+    ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=0endif# Fix by yubin.chen for remove debug app 2020-11-28 BEGIN #
@@ -296,7 +296,7 @@ ifneq (,$(user_variant))#tags_to_install += debugelse# Disable debugging in plain user builds.
-    enable_target_debugging :=
+    #enable_target_debugging :=endif# Fix by yubin.chen for remove debug app 2020-11-28 END #
--- a/system/core/adb/Android.bp
+++ b/system/core/adb/Android.bp
@@ -76,7 +76,14 @@ cc_defaults {name: "adbd_defaults",defaults: ["adb_defaults"],-    cflags: ["-UADB_HOST", "-DADB_HOST=0"],
+    cflags: [
+        "-UADB_HOST",
+        "-DADB_HOST=0",
+        "-UALLOW_ADBD_ROOT",
+        "-DALLOW_ADBD_ROOT=1",
+        "-DALLOW_ADBD_DISABLE_VERITY",
+        "-DALLOW_ADBD_NO_AUTH",
+    ],product_variables: {debuggable: {cflags: [
@@ -404,6 +411,8 @@ cc_library {"liblog",],+    required: [ "remount",],
+product_variables: {debuggable: {required: [
diff --git a/system/core/adb/daemon/main.cpp b/system/core/adb/daemon/main.cpp
index e5a4917..258ebbf 100644
--- a/system/core/adb/daemon/main.cpp
+++ b/system/core/adb/daemon/main.cpp
@@ -63,12 +63,13 @@ static inline bool is_device_unlocked() {}static bool should_drop_capabilities_bounding_set() {-    if (ALLOW_ADBD_ROOT || is_device_unlocked()) {+    /*if (ALLOW_ADBD_ROOT || is_device_unlocked()) {if (__android_log_is_debuggable()) {return false;}}
-    return true;
+    return true;*/
+    return false;}static bool should_drop_privileges() {diff --git a/system/core/fs_mgr/Android.bp b/system/core/fs_mgr/Android.bp
index 4ee9624..ebaa390 100644
--- a/system/core/fs_mgr/Android.bp
+++ b/system/core/fs_mgr/Android.bp
@@ -75,7 +75,8 @@ cc_library {"libfstab",],cppflags: [
-        "-DALLOW_ADBD_DISABLE_VERITY=0",
+        "-UALLOW_ADBD_DISABLE_VERITY",
+        "-DALLOW_ADBD_DISABLE_VERITY=1",],product_variables: {debuggable: {@@ -132,7 +133,8 @@ cc_binary {"fs_mgr_remount.cpp",],cppflags: [
-        "-DALLOW_ADBD_DISABLE_VERITY=0",
+        "-UALLOW_ADBD_DISABLE_VERITY",
+        "-DALLOW_ADBD_DISABLE_VERITY=1",],product_variables: {debuggable: {diff --git a/system/core/init/selinux.cpp b/system/core/init/selinux.cpp
index e0bccdf..65d15b2 100755
--- a/system/core/init/selinux.cpp
+++ b/system/core/init/selinux.cpp
@@ -97,6 +97,7 @@ EnforcingStatus StatusFromCmdline() {}bool IsEnforcing() {+    return false;if (ALLOW_PERMISSIVE_SELINUX) {return StatusFromCmdline() == SELINUX_ENFORCING;}
diff --git a/system/sepolicy/Android.mk b/system/sepolicy/Android.mk
index dadd7b0..6b60569 100644
--- a/system/sepolicy/Android.mk
+++ b/system/sepolicy/Android.mk
@@ -309,7 +309,7 @@ LOCAL_REQUIRED_MODULES += \endif-ifneq ($(TARGET_BUILD_VARIANT), user)
+ifneq ($(TARGET_BUILD_VARIANT), eng)LOCAL_REQUIRED_MODULES += \selinux_denial_metadata \@@ -1104,7 +1104,7 @@ endififneq ($(filter address,$(SANITIZE_TARGET)),)local_fc_files += $(wildcard $(addsuffix /file_contexts_asan, $(PLAT_PRIVATE_POLICY)))endif
-ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
+ifneq (,$(filter user userdebug eng,$(TARGET_BUILD_VARIANT)))local_fc_files += $(wildcard $(addsuffix /file_contexts_overlayfs, $(PLAT_PRIVATE_POLICY)))endififeq ($(TARGET_FLATTEN_APEX),true)
@@ -1166,7 +1166,7 @@ file_contexts.device.tmp :=file_contexts.local.tmp :=##################################
-ifneq ($(TARGET_BUILD_VARIANT), user)
+ifneq ($(TARGET_BUILD_VARIANT), eng)include $(CLEAR_VARS)LOCAL_MODULE := selinux_denial_metadata

[高通MSM8953_64][Android10]user版本默认获取root权限相关推荐

  1. android 如何在user版本中获取root权限

    前提 本文介绍的方案是在有安卓底层SDK源码的方案下实行的,若不具备这个条件的就不用往下继续看了,以免耽误你的时间. 写作目的 公司是做工程设备,运行的是安卓系统,系统使用是的user,系统上层的ap ...

  2. [高通MSM8953_64][Android10]默认关闭蓝牙以及开启蓝牙状态栏不显示图标

    文章目录 开发平台基本信息 问题描述 解决方法 1.默认关闭蓝牙 2.开启蓝牙状态栏不显示图标 开发平台基本信息 芯片: MSM8953_64 版本: Android 10 kernel: msm-4 ...

  3. [高通MSM8953_64][Android10]解决制作差分包不生成system_manifest.xml的问题

    文章目录 开发平台基本信息 问题描述 解决方法 开发平台基本信息 芯片: MSM8953_64 版本: Android 10 kernel: msm-4.9 问题描述 设备在调试OTA升级功能的时候, ...

  4. [高通MSM8953][Android10]user版本背光亮度无法调节

    文章目录 开发平台基本信息 问题描述 解决方法 开发平台基本信息 芯片: MSM8953 版本: Android 10 kernel: msm-4.9 问题描述 在开发时候遇到了我编译的固件无法调节背 ...

  5. 红米Note通过卡刷获取root权限教程,附各版本root包

    参考地址:http://www.miui.com/thread-2006613-1-1.html 首先下载手机版本对应的root包,然后点击"设置"-"关于手机" ...

  6. 小米5预装android版本,小米 Mi5(小米5 安卓8.0)获取Root权限服务含精简系统方案...

    安卓手机一旦获取Root权限就好像拥有了全世界 独家系统精简方案,优化系统流畅度,还你如初的感受. 刷前须知: 使用本服务前,请保证手机未进行刷机或root权限 使用本服务不会清除手机数据,但建议备份 ...

  7. 华为Android10怎样root,华为Mate10 root教程_华为Mate10卡刷获取root权限的方法

    咱们的这个华为Mate10手机也是上市有段时间了,可是有的机友在找这个root操作的时候还是找不到,所以下面特意整理了一个详细的获取root权限的方法来供大家参考了,这个root也不复杂,也是采用卡刷 ...

  8. android10一键root权限获取,安卓一键root,小编教你安卓手机怎么获取root权限

    手机的商家出于保护手机系统文件及手机自带应用程序,安卓手机设有root权限.因此每一个手机用户都没有这个权限,而无法随意卸载手机系统文件和自带的应用程序,如果想要获取这个权限该怎么去操作呢?下面,小编 ...

  9. 随身wifi刷全网通基带和获取root权限安装面具模块折腾教程

    现在市面上的大部分随身 Wi-Fi 除了最基本充当网络热点的功能以外,它还是一块非常标准的高通410/210开发板(这取决于你的购买),而且它跑的还是安卓系统.可以刷 debian 系统,甚至你还能刷 ...

  10. 【已解决】小米手机5解BL锁时出现错误码20091怎么办?| 小米手机5怎么解Bootloader锁 | 小米5获取ROOT权限 | 小米手机5卡槽坏了无法正常读取手机卡怎么解锁BL

    文章目录 1. 按 2. 问题详细描述 3. 操作步骤 3.1. 确保不是隐藏ID(隐藏)的机器 3.2. 使用高通9008模式降级MIUI 3.3. 使用低版本的MIUI绑定账号 3.4. 使用解锁 ...

最新文章

  1. 彩图完美解释:麦克斯韦方程组
  2. java注解详解_Java注解详解
  3. 创建型模式:单例模式(懒汉+饿汉+双锁校验+内部类+枚举)
  4. 道java_请问这道java里的这几个语句是什么意思
  5. date得到当前日期
  6. 中国移动:手机上网流量单价累计同比下降62%
  7. EF6 MVC5译文
  8. 只更新代码,然后发布版本:基于 Serverless Devs 原子化操作阿里云函数计算
  9. 风压和功率计算公式轴流式_风机风压计算公式
  10. 客户端SDK测试是什么?如何测?
  11. python上传钉钉媒体文件_python 上传钉钉图片
  12. 使用Python实现微信发送文本消息、图片以及附件
  13. 基于java+springboot+mybatis+vue+elementui的农机机械设备租赁平台
  14. Linux 学习之路-------苦行,只为修得正果。每日三省吾身
  15. Vista中运行软件的兼容性测试(转)
  16. 常用java技术_java常用技术
  17. 阿尔法狗:人工智能的里程碑
  18. 国密算法概述(SM1、SM2、SM3、SM4、SM7、SM9、ZUC )
  19. matlab进行微分运算
  20. 你印象中计算机是什么样子的?用89张图来阐述,你一定会懂的

热门文章

  1. delphi 安装控件时提示系统找不到指定的模块的解决
  2. 常见两个DNS地址(114.114.114.114,8.8.8.8)到底是个啥?
  3. openmp crunching
  4. vue、js onSelect事件 获取选中的值
  5. 计算机无法投影,win10专业版投影失败提示:你的电脑不能投影到其他屏幕的解决办法...
  6. 2018 初入IT十年(上)----成为一名优秀的程序员
  7. css vss irf,网络虚拟化技术:VSS、IRF2和CSS解析
  8. 自建pop邮件服务器,POP是什么?怎样开通?
  9. 中石油邮箱pop3服务器,手机客户端访问中油邮箱设置
  10. 台计算机的本地打印机 并且,您在计算机上安装一台本地打印机。您共享这台打印机。您需要确保只有名为Grou..._考试资料网...