2017-10-25 13 views
0

충전 중에 밤 시간대를 보여주는 Moto 360처럼 침대 옆 시계를 프로그래밍하려고합니다. 따라서 기본적으로 의도 된대로 작동하는 https://developer.android.com/training/wearables/apps/always-on.html#BackwardCompatibility에 따라 알람 관리자로 "Always-On-App"을 설정했습니다 ("Diesel On Full Guard"의 Android 7.1.1 Wearable Activity).
그러나 책상 위에 몇 분 동안 누워 있어도 시계는 주변 모드 (야간 시간대 내 선호 모드)에서 화면을 전환합니다.몇 분 후에 Android Wear가 주변 모드를 벗어나 검은 색으로 변하는 것을 방지하려면 어떻게해야합니까?

저는 이미 Android Wear: measuring sensors and preventing ambient mode/sleep에 따라 웨이크 잠금 장치를 사용했지만 성공하지는 못했습니다. 프로세서가 여전히 작동 중일 수 있지만 잠시 후 화면이 검게 변합니다 (항상 꺼야하므로 디버깅이 번거로웠다. 에뮬레이터에서 다시 재생할 수는 없으므로 꺼지지 않음).

시계가 "오프"방향으로 주변 모드를 떠나지 않거나 적어도 그 상태를 감지하고 다시 켤 수 없도록하려면 어떻게해야합니까?

답변

0

시계에 아마도 ro.ambient.plugged_timeout_min이 양수 값으로 설정되어있을 것입니다 (reddit post here 참조). OLED 스크린이 타는 것을 막기위한 것입니다. adb shell dumpsys alarm을 실행하면 com.google.android.wearable.ambient에 대한 깨우기 알람이 com.google.android.wearable.action.STOP_AMBIENT_DREAM으로 표시되어 위에서 언급 한 시간 초과 후 화면을 끄거나 흐리게합니다.

내 추측은 당신이 즉, 완전히 주위에가는 SCREEN_DIM_WAKELOCK 또는 유사한을 유지하고, 완전히 검은 색 배경을 사용하려면 다음 중 하나를

  • 정지 필요할 것 주위가는 것을 방지하는 것입니다.
  • 시간 초과가 재설정되도록 주기적으로 화면을 깨우십시오. 그것은 야간 시계로 의미가 있다면 아마 차선책입니다.
+0

나는 시간 초과가 맞았다 고 확신한다. WakefulBroadcastReceiver 및 startWakefulService()와 함께 ScreenManager'FLAG_KEEP_SCREEN_ON ', ScreenManager'FLAG_KEEP_SCREEN_ON'을 시도하고, 주변 모드를 비활성화했으며, 매분마다 건배를 보냈습니다. 모든 도움없이. 한편 아이디어가 부족한 ... – tomseitz