簡體   English   中英

部分喚醒鎖不能用於安裝

[英]Partial wakelock does not work on android wear

我在表盤中收集加速度計數據,一旦設備進入環境模式,cpu就會進入睡眠狀態。

我已經嘗試在創建時添加了partial_wakelock,但它仍然不起作用,完整的喚醒鎖定工作正常,但我希望使用環境模式(如保護中的燒傷)來工作。

有什么想法錯了嗎?

        powerManager = (PowerManager) getSystemService(POWER_SERVICE);
        //wl = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "awake");

        wl = powerManager.newWakeLock((PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP), "MyWakelockTag");

注釋行不起作用。

我在加速度計的注冊中獲取喚醒鎖並將其釋放到onDestroy。

這是一個非常令人沮喪的問題,我無法找出我做錯了什么。

簡而言之,這是正常的。 放松。

出於節省電池的原因,一些Android設備進入睡眠狀態並禁用藍牙模式。 為了變得活躍,我剛剛發現只有FULL_WAKE_LOCK有效。 可能是,我是機器人,但這是我的經驗。 必須在Android OS首選項中禁用其他有助於節省電池的選項。

根據文檔 ,您可以通過調用Context.getSystemService()獲取PowerManager類的實例。

您可能想嘗試使用此:

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);

代替

powerManager = (PowerManager) getSystemService(POWER_SERVICE);

除此之外,您不能將ACQUIRE_CAUSES_WAKEUPON_AFTER_RELEASEPARTIAL_WAKE_LOCK ON_AFTER_RELEASE使用。

另請注意,使用WakeLock的任何應用程序都必須在應用程序清單的<uses-permission>元素中請求android.permission.WAKE_LOCK權限。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM