gpt4 book ai didi

Android 在连接到 USB 设备时禁用默认应用程序选择提示

转载 作者:行者123 更新时间:2023-11-30 01:18:33 25 4
gpt4 key购买 nike

我有一个 Android 应用程序需要连接到 USB 设备。我已经使用 intent 过滤器来获得对设备的许可,但是,每次当我将手机连接到 USB 设备时,Android 都会自动提示选择要使用 USB 设备打开的默认应用程序。我知道设备的所有默认应用程序都由具有 Intent 过滤器的 Activity 决定 <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />

所以我的问题是,如何禁用设备提示?无论应用程序是否打开,提示总是在连接设备时出现,这对我来说真的很烦人。感谢您的帮助!

最佳答案

我刚刚发现有一种方法可以“破解”提示。

  1. 创建一个空白 Activity ,添加带有 USB 附加过滤器的 intent-filter <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />

  2. 移除所有其他 Activity 的 USB Attach intent 过滤器,并添加 requestPermission在这些 Activity 中手动。因为空白 Activity 会记住整个应用程序的 USB 权限,所以一旦这些 Activity 中的任何一个用户授予了 USB 权限,那么整个应用程序就会被授予。因为现在只有空白 Activity 注册了 USB Attach Intent Filter,所以这个空白 Activity 会在 USB 设备插件时默认启动

  3. 在空白 Activity 中 onCreate , 调用 onBackPressed这样一旦启动空白 Activity ,它就会自动返回,因为这真的很快,所以用户应该不会意识到任何变化。

因此,当打开应用程序时,插入USB设备对用户来说就像什么都没有发生一样。

关于Android 在连接到 USB 设备时禁用默认应用程序选择提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37471229/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com