Android 11.0 默认开启USB调试功能

Android 11.0 默认开启USB调试功能

近来收到项目反馈需求想要默认开启USB调试功能,默认开启USB调试功能主要是在UsbDebuggingActivity.java文件中实现,具体修改参照如下:

/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/usb/UsbDebuggingActivity.java

复制代码
        public void onReceive(Context content, Intent intent) {
            String action = intent.getAction();
            if (!UsbManager.ACTION_USB_STATE.equals(action)) {
                return;
            }
-            boolean connected = intent.getBooleanExtra(UsbManager.USB_CONNECTED, false);
+            boolean connected = false;
+            if (!connected) {
+                mActivity.finish();
+            }
+   	   try {
+		 IBinder b = ServiceManager.getService(ADB_SERVICE);
+		 IAdbManager service = IAdbManager.Stub.asInterface(b);
+		 service.allowDebugging(true, mKey);
+		 } catch (Exception e) {
+		 	Log.e(TAG, "Unable to notify Usb service", e);
+			 }
        }

默认开启USB调试功能的话,USB调试的权限申请弹窗自然也要去掉,去掉弹窗并默认赋予权限是在UsbPermissionActivity.java文件中修改,具体修改参照如下:

/vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/usb/UsbPermissionActivity.java

复制代码
            mAlwaysUse.setOnCheckedChangeListener(this);

            mClearDefaultHint = (TextView)ap.mView.findViewById(
                    com.android.internal.R.id.clearDefaultHint);
            mClearDefaultHint.setVisibility(View.GONE);
        }

-        setupAlert();
+        mPermissionGranted = true;
+        finish();
    }

重新编译验证,修改生效,已默认开启USB调试功能

相关推荐
雨白19 分钟前
OkHttp 源码解析:enqueue 非同步流程与 Dispatcher 调度
android
风往哪边走1 小时前
自定义仿日历组件弹框
android
没有了遇见1 小时前
Android 外接 U 盘开发实战:从权限到文件复制
android
Monkey-旭2 小时前
Android 文件存储机制全解析
android·文件存储·kolin
zhangphil3 小时前
Android Coil 3拦截器Interceptor计算单次请求耗时,Kotlin
android·kotlin
DokiDoki之父3 小时前
多线程—飞机大战排行榜功能(2.0版本)
android·java·开发语言
用户2018792831675 小时前
强制关闭生命周期延时的Activity实现思路
android
用户2018792831675 小时前
Activity后生命周期暂停问题
android
用户2018792831675 小时前
浅析:WindowManager添加的 View 的事件传递机制
android
顾林海5 小时前
从"面条代码"到"精装别墅":Android MVPS架构的逆袭之路
android·面试·架构