2013-05-14 113 views
1

我想創建沒有「高級任務殺手」可以殺死的服務,或者即使殺死它也會重新啓動。創建沒有「任務殺手」應用程序可以殺死的Android服務

我嘗試下面的場景,沒有工作:

  1. START_STICKY
  2. 註冊接收短信(遺憾的是它不會在 平板電腦的)

任何人都可以使用代碼提示?

+0

您可能會刺激用戶,直到他們不再使用該應用程序,這是阻止用戶殺死它的一種方式,但是您無法阻止root終止您的服務。 – EKW 2013-05-14 05:15:57

回答

0

您可以嘗試使用Android服務的onDestroy()方法,該方法會在服務被終止後重新啓動您的服務。

@Override 
    public void onDestroy() { 
      Intent serviceIntent = new Intent(context, MyService.class); 
      context.startService(serviceIntent); 
    } 
+0

感謝「Cyber​​_rookie」,也會試試這個。 「MyService.class」也是自己調用的類嗎? – user1223035 2013-05-14 04:57:48

+0

這是無效的方法! – 2013-05-14 05:04:18

+0

是的,就是這個想法。每次服務被殺害,它都會回想起來。 – 2013-05-14 05:50:32

0

解決方案: 嘗試使用START_STICKY,並通過使用startForeground (int id, Notification notification)

原因作出前臺服務運行: 通過這樣的系統認爲它是一些用戶正在積極瞭解因此,即使在記憶力不足的情況下,它也不是殺人的候選人。

參考: 看一看docs參考

我希望這會有所幫助!

+0

謝謝Mehul。我也會嘗試。感謝您的幫助 – user1223035 2013-05-14 05:21:13

相關問題