Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从服务器更新android应用程序数据_Android - Fatal编程技术网

从服务器更新android应用程序数据

从服务器更新android应用程序数据,android,Android,事实上,我在谷歌和Stackoverflow上搜索了很多关于我的问题,但是没有得到我需要的结果。 所以这里是我的问题-我正在构建一个android应用程序。我希望从服务器动态更新我的应用程序数据。请告诉我怎么做?您可以使用数据库并存储数据。每次按下刷新按钮,都可以区分内容。有几种方法可以实现这一点 存储数据 使用数据库 在文件系统中存储对象 将键值集存储在SharedReferences中 通过使用数据库访问对象框架(如GreenDAO)或对象关系映射器(如ORMLite),可以更轻松地利用

事实上,我在谷歌和Stackoverflow上搜索了很多关于我的问题,但是没有得到我需要的结果。
所以这里是我的问题-我正在构建一个android应用程序。我希望从服务器动态更新我的应用程序数据。请告诉我怎么做?

您可以使用数据库并存储数据。每次按下刷新按钮,都可以区分内容。

有几种方法可以实现这一点

存储数据

  • 使用数据库
  • 在文件系统中存储对象
  • 将键值集存储在SharedReferences中
通过使用数据库访问对象框架(如GreenDAO)或对象关系映射器(如ORMLite),可以更轻松地利用数据库

沟通

主动轮询与推送:

如果要“在数据可用时”同步,则需要推送功能。这可以通过利用谷歌云消息(Google Cloud Messaging)来实现,谷歌云消息可用于运动游戏服务的设备

如果你只想同步“当用户打开应用程序时”,你可以使用轮询

  • 检查连通性
  • 你创造 a并以不会阻塞UI线程的方式获取消息,例如AsyncTask doInBackground(…)。如果这是一个长时间运行的操作,您应该使用服务来代替
  • 使用回复创建/删除/更新/删除存储的数据
  • 将结果传递给UI线程,例如AsyncTask onPostExecute(…)
  • 您可以使用GSON,它可以从JSON mesages自动创建Java对象。这样,您就不必手动解析服务器请求。如果只有短运行到中长期运行的服务器请求,您可以考虑使用截击来处理所有上述问题,也可以与GSON兼容。
    更详细的方法是使用ContentProviders、身份验证和同步服务,如图所示。但这可能有点过分,这取决于你的应用程序应该有多复杂。如果您想将您的内容提供给设备上的其他应用程序,例如与google native search应用程序集成,并通过android系统中的“设置”菜单处理您的身份验证/帐户,则建议您这样做。

    这就是我的问题本身,为此,我在哪里存储数据库以及如何从中获取数据?将数据库存储在内部存储器中。您可以创建一个db助手来获取数据。这是一个非常好的示例:帮助!!您还可以提供轮询技术教程的链接吗?当然,对于前面提到的短到中长运行操作,您可以使用:在单独的线程上执行网络操作:gson还将处理因大量JSON答案导致的问题,从而导致内存堆积。gson将序列化json应答,并一次处理一个jsonobject,而不是在内存中加载整个jsonArray,这是一种众所周知的占用空间的情况。