Android USB 开发:如何跳过USB权限询问

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android USB 开发:如何跳过USB权限询问相关的知识,希望对你有一定的参考价值。

我正在做一个硬件和android应用通信的项目。已经实现了对USB的读写操作,可是在插入USB设备后,Android系统会提问用户,是否允许访问该设备的权限提示对话框。这样的话会带来很不好的用户体验。
不知该用什么方式跳过对用户的询问,而直接让应用操作USB设备。
等待大神解答。

参考技术A 开发者模式 关闭usb写保护追问

这个是不可行的。

追答

那你只有刷机了

参考技术B 楼主找到解决方案了吗? 参考技术C 请问楼主,这个问题解决没有啊,我现在也在做这个 参考技术D 我感觉它是做不到的! 第5个回答  2014-01-24 对于root用户来说,这些都是徒劳的

系统应用--android 10.0去掉系统USB权限弹窗

今天收到一个bug, 音乐APP插入USB弹窗有问题,于是需要自己重写一个新的

frameworks/base/packages/SystemUI/src/com/android/systemui/usb/UsbPermissionActivity.java
public void onCreate(Bundle icicle) 
        super.onCreate(icicle);
 
       Intent intent = getIntent();
        mDevice = (UsbDevice)intent.getParcelableExtra(UsbManager.EXTRA_DEVICE);
        mAccessory = (UsbAccessory)intent.getParcelableExtra(UsbManager.EXTRA_ACCESSORY);
        mPendingIntent = (PendingIntent)intent.getParcelableExtra(Intent.EXTRA_INTENT);
        mUid = intent.getIntExtra(Intent.EXTRA_UID, -1);
        mPackageName = intent.getStringExtra("package");
 
        PackageManager packageManager = getPackageManager();
        ApplicationInfo aInfo;
        try 
            aInfo = packageManager.getApplicationInfo(mPackageName, 0);
         catch (PackageManager.NameNotFoundException e) 
            Log.e(TAG, "unable to look up package name", e);
            finish();
            return;
        
        String appName = aInfo.loadLabel(packageManager).toString();
        // 从这里注释掉,只剩下下面的的代码
        
 
        mPermissionGranted = true;
        finish();
 
    
 

 

以上是关于Android USB 开发:如何跳过USB权限询问的主要内容,如果未能解决你的问题,请参考以下文章

USB开发库文件分析

如何为 libusb android 应用程序授予 /dev/bus/usb 权限?

如何在没有root权限的情况下创建一个应用程序来读取ntfs usb

android串口消息

系统应用--android 10.0去掉系统USB权限弹窗

系统应用--android 10.0去掉系统USB权限弹窗