我有这个Android应用程序,就像黄页,但利基特定数据。我坚持将新数据(如新的电话号码,更新的电子邮件,联系信息等)推送到应用程序。
该应用程序还具有排名功能,我可以从基于Web的管理面板更新产品类别的用户排名。目前,当使用活动的Internet连接启动应用程序时,新数据将存储在本地数据库中。如果没有互联网,则从应用程序的本地数据库中使用先前获取的数据。
现在,我对如何将新数据在后台推送到设备以供离线使用感到困惑。在不破坏用户体验的情况下,在后台更新排名和其他信息的最佳方法是什么。
答案 0 :(得分:0)
后台更新的最佳选择可能是IntentService
。它很容易实现并完成工作。
如果您真的想从服务器强制推送数据,则可以使用Google Cloud Messaging。
答案 1 :(得分:0)
尝试异步任务库,看起来像这样
private class LongOperation extends AsyncTask<Void, String, String> {
@Override
protected void onPreExecute() {}
@Override
protected String doInBackground(String... params) {
....
//do some task
............
}
@Override
protected void onPostExecute(String result) {
//Display reasult
}
}
这非常适合做后台任务,因为UI线程在前台。
从http://developer.android.com/reference/android/os/AsyncTask.html
了解更多相关信息