簡體   English   中英

android MVVM結構中app state從后台變成前台時如何調用API

[英]How to call API when app state become foreground from background in android MVVM structure

當app state在android平台的MVVM結構中從后台變成前台時調用API。

前台服務開發 現在讓我們研究如何構建前台服務。 服務 class 應使用新的 class 進行擴展。

onBind() 和 onStartCommand() 函數應該被覆蓋。 從 BackgroundService 復制代碼並將其放入 onStartCommand() function。通過轉到清單文件將服務添加到應用程序。

我們必須將 FOREGROUND SERVICE 權限添加到清單文件中,以使前台服務可用。

 <uses-permission android:name=”android.permission.FOREGROUND_SERVICE”></uses-permission> Starting the Foreground

啟動前台服務現在我們需要啟動服務。

Go 到 MainActivity 文件。 在 onCreate() 方法中,將 BackgroundService class 替換為 ForegroundService class for intent。

不調用 startService(),而是調用 startForegroundService()。

 Intent serviceIntent = new Intent(this, MyForegroundService.class); startForegroundService(serviceIntent);

如果我們運行該應用程序,該服務應該會啟動。 但是,如果我們終止應用程序,它就會停止。

這是因為我們還沒有把服務放在前台。 調用startForegroundService()只是啟動服務,我們還需要把它放在Foreground state。

Go回到Foreground Service class。在onStartCommand()方法中,調用startForeground()。

您可以使用 registerActivityLifecycleCallbacks 來跟蹤應用程序的生命周期。

例如用法: https://stackoverflow.com/a/14470360/5686866

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM