У меня есть служба, которая время от времени обновляет данные. В настоящее время я использую sharedPreferences для хранения данных и использую LocalBroadcast для связи между сервисом и пользовательским интерфейсом.
Я хотел бы улучшить это, чтобы использовать MutableLiveData, что-то вроде этого.
class MyService : Service() {
private var mMyServiceCreatedData = MutableLiveData<String>()
private var mData = ""
override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
....
mData = someData
mMyServiceCreatedData.postValue(mData)
}
}
Я понимаю, что есть viewModel, но в данном случае это служба, которая генерирует данные, а не viewModel, поэтому я не знаю, как она работает для службы. Можно ли наблюдать за данными, созданными из службы, в пользовательском интерфейсе/MainActivity/Fragments?
companion object
, а затем сделатьMyService.mMyServiceCreatedData
там, где хотите? - person tyczj   schedule 28.09.2020