目前我正在开发一个应用程序,在该应用程序中,当设备上没有互联网连接时,我使用 sqlite 数据库,并在互联网可用时使用 Web 服务。
我不得不问,同步的最佳方法是什么?
- 是否可以通过设置标志并检查更新然后同步来实现。
- 或者有任何工具可以解决这个问题。
- 或任何其他可用的方法。
目前我正在开发一个应用程序,在该应用程序中,当设备上没有互联网连接时,我使用 sqlite 数据库,并在互联网可用时使用 Web 服务。
我不得不问,同步的最佳方法是什么?
你可以做一件事:
每当您拨打网络电话时,返回一个字段值“LastSyncedDate”,将此日期值存储在 Android 应用程序中。
因此,每当您下次拨打网络电话时,请在网络电话中发送此存储值。
注意: 此答案用于检查在 android 应用中进行的最后同步。
我认为做一个boolean function
就像: -
public static boolean isNetworkAvailable(Context context) {
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = connectivityManager.getActiveNetworkInfo();
if (info == null)
return false;
return info.isConnected();
}
& 检查网络是否可用:- 调用 Web 服务,否则调用你的 SQLite 数据库。
SymmetricDS Pro 是一款用于在 Android 上同步 SQLite 数据库的工具。
SymmetricDS 现在可以在 Android 移动计算平台上使用其支持 Web 的容错数据库同步软件。Android 客户端遵循所有相同的概念,并为 Android 带来与全功能、基于 Java 的 SymmetricDS 客户端相同的所有核心 SymmetricDS 功能。客户端被设计为作为一个库被引用,以便与需要同步其 SQLite 数据库的 Android 应用程序在进程内运行。