我試圖讓設備進入睡眠狀態,並且我發現references使用PowerManager類的goToSleep(long)方法但我沒有看到它在文檔中,當我嘗試它不工作在我的代碼中使用試圖讓Android設備進入睡眠狀態,但PowerManager不包含「goToSleep(long)方法
Android's documentation不包含goToSleep方法,我可以看到
我的代碼:。
private void sleepDevice() {
try {
PowerManager powerMgr = (PowerManager) getSystemService(Context.POWER_SERVICE);
long time = 1000;
powerMgr.goToSleep(time);
} catch (Exception ex) {
updateStatus("Error attempting to reboot device.");
updateStatus(ex.getLocalizedMessage());
}
}
Andro id Studio不會讓代碼與消息「無法解析方法」goToSleep(long)一起編譯。
我甚至不認爲這種方法已被棄用。另外,我不需要擔心安全權限,該調用旨在在根設備上運行,或者在非根設備上優雅地失敗。
我的問題是,是否有另一種方法/技術可以用來讓Android設備進入睡眠狀態?這種方法是另一類嗎? goToSleep方法去了哪裏? – Pich 2015-02-11 16:25:26
'goToSleep()'從API級21(Lollipop)中的'PowerManager'中移除,爲什麼我不知道。 https://developer.android.com/sdk/api_diff/preview-21/changes/android.os.PowerManager.html – 2015-02-11 16:27:56
[舊版Android文檔(感謝網絡存檔)](https://web.archive.org/ web/20140721142329/https://developer.android.com/reference/android/os/PowerManager.html#goToSleep(long))也聲明您將需要DEVICE_POWER權限,該權限不適用於無根設備上的第三方應用。 – 2015-02-11 16:33:00