在 Android 中从服务器数据库获取数据到 Sqlite 数据库

Posted

技术标签:

【中文标题】在 Android 中从服务器数据库获取数据到 Sqlite 数据库【英文标题】:Fetching Data From Server Database to Sqlite Database in Android 【发布时间】:2015-09-08 05:43:30 【问题描述】:

我正在开发一个应用程序,其中包含服务器端 SQL 数据库中的数据存储。但是应用程序也需要在离线模式下工作,因此应用程序必须在连接到互联网后从服务器端获取数据,并且必须将该数据存储到 SQLite 数据库中。任何人都可以为我提供代码 sn-ps 或包含一个很好的工作示例的任何链接。谢谢

【问题讨论】:

阅读android.content.AbstractThreadedSyncAdapter docs 【参考方案1】:

首先您必须检查您是否通过此代码连接到互联网:

public static boolean isNetConnected(Context context) 
    ConnectivityManager connectivityManager
            = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
    return activeNetworkInfo != null && activeNetworkInfo.isConnected();

如果它返回 true,则显示来自服务的数据并存储到 DB 中,否则从 DB 中显示。对于插入或更新,您可以使用

 String sql = "INSERT OR REPLACE INTO " + Databaseconnector.TABLE_LOCAL_ROSTER
                + "(UNIQUE_ID,USER_NAME,PHONE_NUMBER,ROLE,PROFILE_NAME,IMAGE,URL,RANK) VALUES (?,?,?,?,?,?,?,?)";

享受代码:)

【讨论】:

以上是关于在 Android 中从服务器数据库获取数据到 Sqlite 数据库的主要内容,如果未能解决你的问题,请参考以下文章

如何在 C# Rest 服务中从 Android 应用程序读取 JSON 数据

在Angular 2中从服务到组件获取异步数据

在android中从名称而不是id获取资源

Android:使用“进度”GUI在后台线程中从网络加载数据? [复制]

在 Android Studio 中从用户那里获取图片并进行编码,以便可以将其存储在数据库中

如何在 Swift 中从数据库中保存和获取一个对象?