Android ContentProvider 访问练习列表?

Android ContentProvider to access a list of exercises?

我正在开发一个 android 健身应用程序,我想掌握使用 ContentProviders 的窍门。我正在考虑使用 myfitnesspal api 获取锻炼列表,但 api 是私人的,我的请求尚未得到解决。然后我考虑从网站上进行 scraping 练习——但我有点担心这种方法的可靠性(如果网站出现故障,应用程序将无法继续工作)。

解决此问题的最佳方法是什么? "safe" 使用 ContentProvider 从网站(而不是 api)获取信息吗?

如果我错了,我真的很想知道..但答案很简单:ContentProvider 只允许连接到您手机中的数据库。您不能使用 ContentProvider 从 Internet 获取数据。您尝试做的事情可以通过 WebService 实现,它是 Internet 上确定域上的应用程序 运行,并允许您调用一些链接到同一域的 URL 的预定义方法(但我想你知道,对吧?)。

如果我错了请纠正我。即使没有网络 API 活动,您也希望用户访问您的数据。所以我的想法是

  1. 从网络下载所有数据API并将其存储在数据库中
  2. 创建一个节点以检查数据是否已在 API 中更新,如果更新,则在后台下载新数据并更新数据库,否则显示来自数据库的相同数据

好处

  1. 用户不需要一直下载数据他们使用应用程序并且他们的互联网流量将被节省
  2. 如果没有任何数据,用户不需要看到空白页