向 USB 主机设备授予持久权限

时间:2021-07-23 15:27:03

标签: android

我有一个应用程序需要连接到 USB 摄像头。我希望用户只授予应用访问相机一次的权限,而不是每次连接 USB 相机时。

我尝试使用意图过滤器,因为这是基于文档 (https://developer.android.com/guide/topics/connectivity/usb/host) 的推荐方式,但这有一个缺点,即每次相机连接应用程序时,主活动都会启动 - 即使应用程序已经在运行。这对用户来说很烦人,因为他们会丢失应用中所有未保存的数据和导航点。

这是 AndroidManifest.xml 部分:

<activity
    android:name=".activity.home.HomeActivity"
    android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>

    <intent-filter>
        <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
    </intent-filter>
    <meta-data
        android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
        android:resource="@xml/device_filter" />
</activity>

如何在设备连接时在不更改应用程序状态的情况下授予对 USB 设备的持久访问权限?

0 个答案:

没有答案