android 背景執行方法 IntentService、Service
此方法建議不要長期使用timer長期執行,因為手機螢幕關閉後呈待機狀態timer會停止運作,用sleep(1000)也是會停止計時,想做長期定時通知請看我做定時通知 那篇 。 IntentService是Service的簡易版,已內建一個thread,如果只是想用一個thread就好這個非常適合,建立IntentService比建立Service簡單。 IntentService、Service我做的實驗目前情況: IntentService在完全關閉activity後會停止(就是關掉手機佔存在背景activity) Service在完全關閉activity後也會停止,但是能透過重新啟動service的方式重新啟動,可是service的程式就要重新執行一遍。 service 的生命週期 建立class方式 在manifest.xml裡會有 <service android:name=".MyService" android:enabled="true" android:exported="true" /> 在activity啟動service方式 //open intentservice Intent intent = new Intent(this, NotificationService.class); Log.d(TAG, "service start"); startService(intent); Service public class MyService extends Service { public MyService() { } @Override public IBinder onBind(Intent intent) { // TODO: Return the communication channel to the service. throw new UnsupportedOperationException("Not yet implemented"); } @...