userバージョンはroot権限のandroid 8を開く方法です.1

3033 ワード

1.ro.の修正adb.义齿Secureプロパティ

/code/1-android8.1/build/core$ git diff
diff --git a/core/main.mk b/core/main.mk
index 44ad271..947d7a3 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -239,11 +239,11 @@ enable_target_debugging := true
 tags_to_install :=
 ifneq (,$(user_variant))
   # Target is secure in user builds.
-  ADDITIONAL_DEFAULT_PROPERTIES += ro.secure=1
+  ADDITIONAL_DEFAULT_PROPERTIES += ro.secure=0
   ADDITIONAL_DEFAULT_PROPERTIES += security.perf_harden=1

   ifeq ($(user_variant),user)
-    ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=1
+    ADDITIONAL_DEFAULT_PROPERTIES += ro.adb.secure=0
   endif

   ifeq ($(user_variant),userdebug)
@@ -251,7 +251,7 @@ ifneq (,$(user_variant))
     tags_to_install += debug
   else
     # Disable debugging in plain user builds.
-    enable_target_debugging :=
+   # enable_target_debugging :=
   endif

   # Disallow mock locations by default for user builds

2.selinuxの変更

/code/1-android8.1/system/core/
diff --git a/init/init.cpp b/init/init.cpp
index 6ecd88c..cfeef46 100755
--- a/init/init.cpp
+++ b/init/init.cpp
@@ -588,6 +588,7 @@ static selinux_enforcing_status selinux_status_from_cmdline() {

 static bool selinux_is_enforcing(void)
 {
+return false;
     if (ALLOW_PERMISSIVE_SELINUX) {
         return selinux_status_from_cmdline() == SELINUX_ENFORCING;
     }


3.adbモジュールのandroidを修正する.mkファイル

/code/1-android8.1/system/core$ git diff
diff --git a/adb/Android.mk b/adb/Android.mk
index ece0645..4057e37 100644
--- a/adb/Android.mk
+++ b/adb/Android.mk
@@ -350,9 +350,9 @@ LOCAL_CFLAGS := \
     -D_GNU_SOURCE \
     -Wno-deprecated-declarations \

-LOCAL_CFLAGS += -DALLOW_ADBD_NO_AUTH=$(if $(filter userdebug eng,$(TARGET_BUILD_VARIANT)),1,0)
+LOCAL_CFLAGS += -DALLOW_ADBD_NO_AUTH=$(if $(filter user userdebug eng,$(TARGET_BUILD_VARIANT)),1,0

-ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
+ifneq (,$(filter user userdebug eng,$(TARGET_BUILD_VARIANT)))
 LOCAL_CFLAGS += -DALLOW_ADBD_DISABLE_VERITY=1
 LOCAL_CFLAGS += -DALLOW_ADBD_ROOT=1
 endif

4.デフォルトでadbポートを開く設定
/code/1-android8.1/device/sprd/sharkl2$ git diff .
diff --git a/common/DeviceCommon.mk b/common/DeviceCommon.mk
index c94b914..7aee7f8 100755
--- a/common/DeviceCommon.mk
+++ b/common/DeviceCommon.mk
@@ -153,7 +153,7 @@ PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \

 # Set default USB interface
 PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
-    persist.sys.usb.config=ptp
+    persist.sys.usb.config=ptp,adb

 PRODUCT_PROPERTY_OVERRIDES += \
     persist.sys.modem.diag=,gser \

説明:


1.ステップ4では、デフォルトでadbポートを開くように設定できます.携帯電話以外の項目には画面がないため、メニュー項目でusb debugメニューを開くことができません.2.手順1の
  # Disable debugging in plain user builds.
-    enable_target_debugging :=
+   # enable_target_debugging :=

変更しない場合は、電源を入れて最初のadbはroot権限を持っています.ただし、adb unrootを実行してからadb rootを実行すると、root権限を再取得できません.root権限を持つには、マシンを再起動するしかありません.