修改文件:
device/sprd/scx35l/common/device.mk
device/sprd/scx35l/common/rootdir/root/init.sc8830.usb.rc
build/core/main.mk
packages/apps/Settings/src/com/android/settings/DeviceInfoSettings.java
packages/apps/Settings/src/com/android/settings/SettingsActivity.java
frameworks/base/services/usb/java/com/android/server/usb/UsbDeviceManager.java
system/core/adb/adb_main.cpp(6.0 在adb_main.cpp文件,7.0在system/core/adb/adb/daemon/main.cpp文件修改)
修改内容:
1.device/sprd/scx35l/common/device.mk
diff --git a/common/device.mk b/common/device.mk
index e3831bc..81233d1 100644
--- a/common/device.mk
+++ b/common/device.mk
@@ -202,7 +202,7 @@ ifeq ($(TARGET_BUILD_VARIANT),user)
PRODUCT_PROPERTY_OVERRIDES +=
persist.sys.sprd.modemreset=1
- ro.adb.secure=1
+ ro.adb.secure=0
persist.sys.sprd.wcnreset=1
persist.sys.apr.enabled=0
persist.sys.engpc.disable=1
2.device/sprd/scx35l/common/rootdir/root/init.sc8830.usb.rc
diff --git a/common/rootdir/root/init.sc8830.usb.rc b/common/rootdir/root/init.sc8830.usb.rc
index e0fa883..b3ace38 100644
--- a/common/rootdir/root/init.sc8830.usb.rc
+++ b/common/rootdir/root/init.sc8830.usb.rc
@@ -22,6 +22,9 @@ on property:ro.bootmode=iq
setprop persist.sys.modem.diag ${persist.sys.modem.diag},vser
rm data/property/persist.sys.modem.diag
+on property:persist.sys.usb.config=*
+ setprop sys.usb.config mtp,adb
+
on property:sys.usb.config=mtp
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor 1782
3.build/core/main.mk
diff --git a/core/main.mk b/core/main.mk
index bcd1446..f9c2f44 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -316,7 +316,7 @@ 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),userdebug)
@@ -360,7 +360,7 @@ ifeq (true,$(strip $(enable_target_debugging)))
INCLUDE_TEST_OTA_KEYS := true
else # !enable_target_debugging
# Target is less debuggable and adbd is off by default
- ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=0
+ ADDITIONAL_DEFAULT_PROPERTIES += ro.debuggable=1
endif # !enable_target_debugging
4.packages/apps/Settings/src/com/android/settings/DeviceInfoSettings.java
diff --git a/src/com/android/settings/DeviceInfoSettings.java b/src/com/android/settings/DeviceInfoSettings.java
index 743b629..97e5631 100644
--- a/src/com/android/settings/DeviceInfoSettings.java
+++ b/src/com/android/settings/DeviceInfoSettings.java
@@ -305,7 +305,7 @@ public class DeviceInfoSettings extends SettingsPreferenceFragment implements In
final UserManager um = (UserManager) getSystemService(Context.USER_SERVICE);
if (um.hasUserRestriction(UserManager.DISALLOW_DEBUGGING_FEATURES)) return true;
-
+ mDevHitCountdown = -1;
if (mDevHitCountdown > 0) {
mDevHitCountdown--;
if (mDevHitCountdown == 0) {
5.packages/apps/Settings/src/com/android/settings/SettingsActivity.java
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index f60d7ad..7c86d62 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -1265,6 +1265,9 @@ public class SettingsActivity extends Activity
}
private void updateTilesList(List
+ SharedPreferences.Editor editor=mDevelopmentPreferences.edit();
+ editor.putBoolean(DevelopmentSettings.PREF_SHOW, true);
+ editor.commit();
final boolean showDev = mDevelopmentPreferences.getBoolean(
DevelopmentSettings.PREF_SHOW,
android.os.Build.TYPE.equals("eng"));
6.frameworks/base/services/usb/java/com/android/server/usb/UsbDeviceManager.java
diff --git a/services/usb/java/com/android/server/usb/UsbDeviceManager.java b/services/usb/java/com/android/server/usb/UsbDeviceManager.java
index 15c47ef..88edca5 100644
--- a/services/usb/java/com/android/server/usb/UsbDeviceManager.java
+++ b/services/usb/java/com/android/server/usb/UsbDeviceManager.java
@@ -647,14 +647,16 @@ public class UsbDeviceManager {
return UsbManager.USB_FUNCTION_NONE;
}
- if (mAdbEnabled) {
+ //if (mAdbEnabled) {
functions = UsbManager.addFunction(functions, UsbManager.USB_FUNCTION_ADB);
- } else {
+ Slog.d(TAG, "jamous applyAdbFunction add functions return " + functions);
+
7.system/core/adb/adb_main.cpp
diff --git a/adb/adb_main.cpp b/adb/adb_main.cpp
index 45a2158..8181f79 100644
--- a/adb/adb_main.cpp
+++ b/adb/adb_main.cpp
@@ -239,9 +241,9 @@ int adb_main(int is_daemon, int server_port)
// descriptor will always be open.
adbd_cloexec_auth_socket();
- if (ALLOW_ADBD_NO_AUTH && property_get_bool("ro.adb.secure", 0) == 0) {
+ //if (ALLOW_ADBD_NO_AUTH && property_get_bool("ro.adb.secure", 0) == 0) {
auth_required = false;
- }
+ //}
adbd_auth_init();
请参考如下修改:
1.system/core/adb/Android.mk
diff --git a/adb/Android.mk b/adb/Android.mk
index d4adbfb..e06956a 100644
--- a/adb/Android.mk
+++ b/adb/Android.mk
@@ -237,10 +237,8 @@ LOCAL_CFLAGS :=
LOCAL_CFLAGS += -DALLOW_ADBD_NO_AUTH=$(if $(filter userdebug eng,$(TARGET_BUILD_VARIANT)),1,0)
-ifneq (,$(filter userdebug eng,$(TARGET_BUILD_VARIANT)))
-LOCAL_CFLAGS += -DALLOW_ADBD_DISABLE_VERITY=1
-LOCAL_CFLAGS += -DALLOW_ADBD_ROOT=1
-endif
+ LOCAL_CFLAGS += -DALLOW_ADBD_DISABLE_VERITY=1
+ LOCAL_CFLAGS += -DALLOW_ADBD_ROOT=1
LOCAL_MODULE := adbd
2.system/core/adb/adb_main.cpp
diff --git a/adb/adb_main.cpp b/adb/adb_main.cpp
index 45a2158..8181f79 100644
--- a/adb/adb_main.cpp
+++ b/adb/adb_main.cpp
@@ -85,11 +85,12 @@ static const char *root_seclabel = NULL;
static void drop_capabilities_bounding_set_if_needed() {
#ifdef ALLOW_ADBD_ROOT
- char value[PROPERTY_VALUE_MAX];
+ return;
+
#endif
int i;
for (i = 0; prctl(PR_CAPBSET_READ, i, 0, 0, 0) >= 0; i++) {
@@ -109,6 +110,7 @@ static void drop_capabilities_bounding_set_if_needed() {
}
static bool should_drop_privileges() {
+ return false;
#if defined(ALLOW_ADBD_ROOT)
char value[PROPERTY_VALUE_MAX];



