【问题标题】:Google Play Services doesn't work on Huawei devices when in IDLE mode在 IDLE 模式下,Google Play 服务无法在华为设备上运行
【发布时间】:2020-12-04 12:43:24
【问题描述】:

我们尝试了wake_lock,我们尝试从Transition API切换到Activity Recognition API,我们尝试通过IntentService和BroadcastReceiver获取更新,但是当手机离线(没有wifi和没有移动数据)并且屏幕转动时问题仍然存在离开。在这种情况下,我们的应用程序停止从 API 接收信息(如果我们使用 IntentService 则 onHandleIntent 或如果我们使用 BroadcastReceiver 则永远不会启动 onReceive)。

我们也用华为Y6S EMUI 9.1手机进行了测试,但问题再次出现。

我们注意到,当手机离线并且在 logcat 中屏幕关闭时,它会停止出现:

12-03 13:57:16.965 1366 2098 W AlarmManager: mIsScreenOn 是: true, WAKEUP 警报触发动作 = com.google.android.location.ALARM_WAKEUP_ACTIVITY_DETECTION 包名称是: com.google.android.gms 12-03 13:57:16.988 1366 5998 V BroadcastQueue:已完成有序广播 BroadcastRecord{855fb8a u0 com.google.android.location.ALARM_WAKEUP_ACTIVITY_DETECTION}

GooglePlayServices 在这种情况下是否可能停止?

【问题讨论】:

  • 我认为它与 GMS 无关。这是一个EMUI过程控制问题。

标签: android android-studio kotlin huawei-developers


【解决方案1】:

根据 ActivityRecognitionAPI 的 Google 文档 -

为了节省电池电量,当设备长时间处于'STILL'状态时,活动报告可能会停止 一段的时间。一旦设备再次移动,它将恢复。这只发生在支持 Sensor.TYPE_SIGNIFICANT_MOTION 硬件的设备上。 从 API 21 开始,如果设备处于省电模式且屏幕关闭,则接收活动的频率可能低于 detectionIntervalMillis 参数。

请检查您的设备。还有哪些华为设备用于测试? 另外,此接口已弃用,请使用 ActivityRecognitionClient。

【讨论】:

    猜你喜欢
    • 2018-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-01
    • 1970-01-01
    相关资源
    最近更新 更多