如何从 Sync Adapters 通知应用程序 UI 线程?
How to notify the application UI thread from Sync Adapters?
背景:
我正在使用 Sync Adapters 将媒体文件上传到云端。
像 isSynced、mediaPath 等媒体元数据存储在 sqlite 数据库中。
我没有使用 Content Provider
来管理或访问来自 sqlite 数据库的数据。
我的应用程序能够在后台或应用程序关闭时同步数据。
在其中一个屏幕上,在我的应用程序中,我正在显示媒体同步。我将计数器显示为 当前正在同步的媒体/总媒体数。
每个媒体需要 大约 2 到 3 秒 与云同步。
问题:
如何从另一个进程非常频繁地通知 UI/Screen。有 200 个媒体,所有媒体都按顺序上传。我需要在 UI.
上显示有多少文件等待同步的更新计数器
我也打算用 Room Persistence Library
替换 SQLiteOpenHelper
。
预期:
如何通知 UI 已在不同进程间同步(由于同步适配器)的已更新媒体尚待同步?
如果我用 Room Persistence Library
替换 SQLiteOpenHelper
那么如何获取相同的实例?
非常频繁地更新 UI 的优化代码或方法。
您是否尝试过借助 Bus(图书馆)发布活动?或者广播接收器?我认为这是要走的路。
背景:
我正在使用 Sync Adapters 将媒体文件上传到云端。
像 isSynced、mediaPath 等媒体元数据存储在 sqlite 数据库中。
我没有使用 Content Provider
来管理或访问来自 sqlite 数据库的数据。
我的应用程序能够在后台或应用程序关闭时同步数据。
在其中一个屏幕上,在我的应用程序中,我正在显示媒体同步。我将计数器显示为 当前正在同步的媒体/总媒体数。
每个媒体需要 大约 2 到 3 秒 与云同步。
问题:
如何从另一个进程非常频繁地通知 UI/Screen。有 200 个媒体,所有媒体都按顺序上传。我需要在 UI.
上显示有多少文件等待同步的更新计数器我也打算用 Room Persistence Library
替换 SQLiteOpenHelper
。
预期:
如何通知 UI 已在不同进程间同步(由于同步适配器)的已更新媒体尚待同步?
如果我用
Room Persistence Library
替换SQLiteOpenHelper
那么如何获取相同的实例?
非常频繁地更新 UI 的优化代码或方法。
您是否尝试过借助 Bus(图书馆)发布活动?或者广播接收器?我认为这是要走的路。