在Android 11中停止在后台访问Microphone。只有3个选项,Allow when -use,Allow once和Deny。
如何在Android 11中让app一直在后台访问麦克风?有什么变通方法吗?
发布于 2020-10-13 14:52:21
新的Android开发者政策限制在后台访问麦克风和摄像头。
使用Accessibility Service时,用户仍然可以在后台使用该功能。但是,通知将始终处于打开状态。
发布于 2020-11-05 22:59:31
要在Android 11中访问后台麦克风/摄像头/位置,Android提供了一些豁免,您需要符合以下条件之一:
参考:https://developer.android.com/guide/components/foreground-services#restrictions-exemptions
使用时限制的豁免:
前台服务在下列情况之一启动时,不受使用中访问位置、摄像头、麦克风的限制:
该服务由系统组件启动。
该服务通过与应用程序小部件交互来启动。
该服务通过与通知交互来启动。
该服务作为从不同的可见应用程序发送的PendingIntent启动。
该服务由作为在设备所有者模式下运行的设备策略控制器的应用程序启动。
该服务由提供VoiceInteractionService的应用程序启动。
该服务由具有START_ACTIVITIES_FROM_BACKGROUND特权权限的应用程序启动。
发布于 2021-05-02 20:14:54
现在我们必须为我们的前台服务(https://developer.android.com/guide/components/foreground-services#types)指定一个类型:
<manifest>
...
<service ...
android:foregroundServiceType="camera|microphone" />
</manifest>但在某些情况下,即使我们指定了android:foregroundServiceType,我们的前台服务仍然不能访问摄像头或麦克风
如果前台服务在应用程序处于后台时被启动(对用户不可见-没有可见活动),例如在设备引导(BOOT_COMPLETED)广播时,则这样的服务不能使用照相机、麦克风
如果在应用程序处于前台时启动前台服务(对用户可见-某些可见活动),则这种服务可以使用照相机、麦克风
信息来源:https://developer.android.com/guide/components/foreground-services#bg-access-restrictions
我的问题Camera2 cameraManager.openCamera exception from time to time on some devices
https://stackoverflow.com/questions/64306994
复制相似问题