回答
如何與應用程序的第一個活動一起啓動Started Service?
致電startService(intent)
在onCreate()
方法的第一個Activity
。
我有一個後臺服務。我希望它的生命週期獨立於應用程序活動。
要做到這一點,最好的辦法是爲Service
創建PendingIntent
,並註冊它的AlarmManager
:
Intent i = new Intent(this, LocationService.class);
PendingIntent pi = PendingIntent.getService(this, 1, intent, PendingIntent.FLAG_CANCEL_CURRENT);
AlarmManager am = (AlarmManager)getSystemService(Context.ALARM_SERVICE);
am.setInexactRepeating(AlarmManager.RTC_WAKEUP,0,60*60*1000, pi); /* start Service every hour. */
這將確保Service
以固定的間隔週期開始,與是否用戶已經將應用程序帶到了前臺或沒有。
如何在Android應用程序啓動時啓動服務?
可以自動在應用程序啓動通過擴展Application
類開始Service
:
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
startService(new Intent(this, NetworkService.class));
}
}
和修改application
標籤在你manifest
與
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:name="com.mycompanydomain.MyApp">
這工作,因爲Application
類是應用程序啓動時要創建的第一批實體之一。無論啓動Activity
是什麼,這將啓動Service
。
謝謝Y.S.開始第一項活動的服務是我目前所做的。我正在尋找另一種方式,例如:以某種方式響應MAIN動作。 該場景是我所有的活動都使用該服務,爲該服務提供接口。該服務是一個網絡IO相關的,所以它必須保持活着。 – 2015-04-06 14:40:51
那麼你所面臨的問題究竟是什麼?你在這裏無法實現什麼? – 2015-04-07 08:49:30
這是應用程序設計的問題。如果我們可以聲明哪個服務啓動的方式與我們在清單中聲明要加載哪個活動的相同方式會更方便。現在,我指定一個活動作爲應用程序的入口點,並在那裏加載服務。但是如果我選擇另一項活動作爲切入點呢?剪切粘貼對我來說看起來不夠乾淨。 – 2015-04-07 15:40:05
- 1. 如何在應用程序啓動時啓動Android服務?
- 2. 在應用程序啓動時明確啓動GCM服務Android
- 3. 應用程序啓動時自動啓動Android服務
- 4. 如何在新應用程序啓動時啓動服務?
- 5. 如何啓動後啓動Android應用程序作爲服務
- 6. 在啓動時啓動服務並從服務啓動應用程序?
- 7. 如何在啓動時/啓動後在啓動的Android上啓動本機服務器應用程序(ELF)?
- 8. Azure應用服務 - 啓動時彈出啓動應用程序
- 9. Android啓動服務/應用程序
- 10. 設備啓動時如何啓動應用程序的服務? (Android)
- 11. 在應用程序啓動時停止已啓動的服務
- 12. 運行應用程序時服務未啓動 - 如何顯式啓動服務?
- 13. 如何在開機時啓動/啓動應用程序Android
- 14. 如何在手機啓動時啓動Android應用程序?
- 15. 如何在Android啓動時延遲啓動應用程序?
- 16. Android:應用程序重新啓動後服務未啓動
- 17. 從多個服務的BroadcastReceiver啓動Android啓動應用程序
- 18. 在啓動時啓動Kivy服務(Android)
- 19. Android - 在啓動時啓動服務
- 20. 在服務器啓動/重新啓動時啓動Node.js應用程序
- 21. BroadcastReceiver在啓動時無條件啓動服務,無需啓動應用程序
- 22. Android服務在啓動時啓動並啓動一個URI請求來啓動另一個應用程序
- 23. 啓動Apache服務器時啓動應用程序
- 24. 啓動時啓動服務和應用程序安裝後
- 25. 啓動後啓動服務時,應用程序崩潰
- 26. 啓動應用程序在啓動時
- 27. 在啓動時啓動應用程序
- 28. 在啓動時啓動應用程序
- 29. 如何在Spring Boot應用程序啓動時啓動H2 TCP服務器?
- 30. 如何在服務器啓動時啓動我的應用程序
那麼你有什麼問題? – pskink 2015-04-05 13:19:58