在android中加载外部数据的最佳方法

时间:2011-10-06 23:12:31

标签: android web-services

在android中加载外部数据的最佳方法是什么?

目前,这就是我的工作:

  1. 创建RESTful Web服务,返回JSON对象数组(在服务器上)
  2. 在android中调用HTTPGet并使用服务
  3. 通过回复JSON解析
  4. 使用GSON将响应直接解析为对象数组
  5. 根据需要使用对象数组
  6. 这是Android文档方面的最佳方法吗?

1 个答案:

答案 0 :(得分:15)

根据Google I/O Creating REST apps演示文稿,您应该执行以下操作:

  1. 创建返回JSON(或XML)的RESTful Web服务
  2. 您的活动(通过AsyncTask或Loader)从ContentProvider
  3. 请求资源
  4. ContentProvider返回一个Cursor,其中包含已在本地Sqlite Db中缓存的数据
  5. ContentProvider要求服务(或SyncService)从Web服务收集新数据
  6. 您的活动使用Cursor在UI中显示数据
  7. 服务调用HttpGet
  8. 服务解析响应
  9. 服务将新数据推送到ContentProvider(进而更新Sqlite数据库)
  10. ContentProvider调用notifyChange通知app在步骤3中返回的Cursor有新数据
  11. 您的活动从ContentProvider重新请求更新的Cursor,然后使用Cursor中的新数据更新UI