1

我正在编写一个录音机应用程序,我想知道是否可以在手机锁定屏幕时激活 MediaRecorder。如果是这样,这只是特殊许可的问题还是其他问题?提前致谢。

4

3 回答 3

2

you should try using PowerManager class with permission android.permission.WAKE_LOCK.

you can find more Here.

于 2012-11-27T05:53:50.400 回答
1

对的,这是可能的。锁定屏幕不会影响应用程序中服务的工作。因此,如果您使用的是服务,那么您的录制将继续进行。但是,如果您的手机处于待机状态,则可能无法正常工作。在这种情况下,只需抓住一个唤醒锁来保持 CPU 处于活动状态并满足您的需求。但是,抓取唤醒锁会影响电池,因此您必须明智地使用它。

于 2012-11-27T06:15:11.933 回答
1

如今(Android 11 或更高版本),这应该不再可能:

注意:在运行 Android 9(API 级别 28)或更高版本的设备上,后台运行的应用程序无法访问麦克风。因此,您的应用应仅在其位于前台或在前台服务中包含 MediaRecorder 实例时才录制音频。

[1] https://developer.android.com/guide/topics/media/mediarecorder

限制对位置、摄像头和麦克风的访问
为了帮助保护用户隐私,Android 11(API 级别 30)对前台服务何时可以访问设备的位置、摄像头或麦克风进行了限制。当您的应用在后台运行时启动前台服务时,前台服务有以下限制:
...
前台服务无法访问麦克风或摄像头。

[2] https://developer.android.com/guide/components/foreground-services

于 2021-08-27T08:38:14.600 回答