【问题标题】:Doze app state implications for a voice recording app打盹应用程序状态对录音应用程序的影响
【发布时间】:2015-10-07 12:54:11
【问题描述】:

我有一个 android 应用程序,它使用服务录制语音 - 以及服务内的一个线程(显然该应用程序可以在后台录制..)

应用会受到新的 Doze 应用状态的影响吗? https://developer.android.com/training/monitoring-device-state/doze-standby.html#whitelisting-cases

我还没有6.0的手机,模拟器一般不能录语音...

【问题讨论】:

  • "应用会受到新的 Doze 应用状态的影响吗?" - 大概。由于您的应用程序可以在后台录制,因此我假设您没有持有完整的唤醒锁(保持屏幕开启等),而是持有部分唤醒锁。唯一可行的方法是,如果您的应用程序被用户列入白名单,或者录制将在打盹模式开始之前完成(例如,它们都不到一小时),或者用户正在做其他事情来阻止打盹模式一般情况下(例如,在录制时将设备放在充电器上)。
  • @CommonsWare - 谢谢。我认为一个好的做法是在打开应用程序时显示一个对话框,要求用户将应用程序包含在打盹的白名单中。

标签: android android-6.0-marshmallow


【解决方案1】:

如果您的服务在设备进入打盹模式时在前台运行(带有相关通知),根据 Dianne Hackborn 对this post 的评论,它不应该受到影响。查看似乎可以证明这种行为的记录经验here。

另一方面,测试表明,在打盹模式下,对 GPS 等某些传感器的访问受到限制,因此这可能也适用于麦克风。

由于到目前为止打盹模式的文档记录很差,不幸的是,此时您可能无法在物理设备上运行自己的测试。

【讨论】:

    【解决方案2】:

    是的,每个应用程序都可能被 Doze “杀死”。但是,如果您的服务在前台运行,您可以避免 App Standby。请记住,要求用户将应用程序放入白名单中是 Google 服务条款禁止的,因此您不能这样做。如果您想做类似的事情,您需要在您的清单中添加一个权限,并希望 Google 对您的应用进行审核。

    【讨论】:

      猜你喜欢
      • 2016-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多