天天看點

[RK3288][Android6.0] 調試筆記 --- kill掉service後不重新開機方法

Platform: Rockchip

OS: Android 6.0

Kernel: 3.10.92

應用程式經常會用到service來跑背景服務,然後應用程式被kill掉之後service卻還在。

或者你想要kill掉service,但是執行了kill指令之後它有預設啟動了。

這是預設的系統行為,下面是解決方法:

如果Service原本就有onStartCommand,那麼直接修改傳回值,如果沒有,那麼添加如下code即可:

public int onStartCommand(Intent intent, int flags, int startId) {
    return START_NOT_STICKY;
}
           

參考:

如何提高Service的優先級避免被殺死或者殺死後如何再次重新開機Service?

Why does my Android service get restarted when the process is killed, even though I used START_NOT_STICKY?

Service總結

Service API changes starting with Android 2.0

Android的服務(Service)(二)Service的自動重新開機問題