如果活动暂停,如何处理实时数据多个事件

问题描述

我们公司有一个场景,用户可以登录我们的应用程序,而他登录时可以接收呼叫,因此登录活动将被暂停,实时数据将不会收到任何事件。

我们正在使用KTX库中的LiveData构建器,如下所示:

fun signInAnonymously() = liveData<Resource<Unit>> {
    emit(Resource.Loading(show = true))
    try {
        emit(Resource.Success(repository.signInAnonymously()))
    } catch (exception: Exception) {
        emit(Resource.Error(e))
    }
    emit(Resource.Loading(show = false))
}

如果用户signInAnonymously尚未完成时收到呼叫,因此活动将暂停,在完成signInAnonymously之后,Resource.SuccessResource.Loading会发出,但是当该活动在调用后又恢复恢复,该活动将不会收到除Resource.Loading(show = false)以外的任何事件,因为它是最后一个事件,我该如何处理?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)