1
是否可以取消Android中的關機事件?基本上,如果用戶試圖關閉手機,正在運行的Android應用程序可以取消關機事件。這可能嗎?Android關機事件
是否可以取消Android中的關機事件?基本上,如果用戶試圖關閉手機,正在運行的Android應用程序可以取消關機事件。這可能嗎?Android關機事件
您可以註冊BroadcastReceiver來偵聽並響應android.intent.action.ACTION_SHUTDOWN
意圖,但取消該事件是不可能的。您可以通過在應用程序生命週期內的某個地方註冊一個「關閉鉤子」並進行阻塞來延遲關閉。喜歡的東西:
Runtime.getRuntime().addShutdownHook(new Thread() {
@Override
public void run() {
// do something at least useful
// and not this
try {
Thread.sleep(60000); // please don't do this... think of the unicorns
} catch (InterruptedException e) {
e.printStackTrace();
}
}
});
我認爲這將有可能取消該事件,因爲我們正在開發使用手機的GPS跟蹤應用,我們希望的是,用戶將不能夠關閉手機。 – Durty
我建議重新評估你的應用程序的設計,因爲即使你可以阻止用戶啓動的關機,你也無法防止電池耗盡或用戶拔出電池強制關機。 – ErikR
我建議要求'RECEIVE_BOOT_COMPLETED'權限,並在手機重新啓動時重新啓動您的跟蹤器。防止用戶重新啓動設備並不好。 – twaddington