【问题标题】:Can loaders be used without content provider or combination is must?加载程序可以在没有内容提供程序的情况下使用还是必须组合使用?
【发布时间】:2015-11-17 08:46:40
【问题描述】:
  1. 加载器可以在没有内容提供者的情况下使用吗?或者必须结合使用?

  2. 最好的做法是仅在预期的情况下使用内容提供程序 由其他应用程序使用或仅用于本地使用还有内容 推荐供应商?

  3. 如果数据在 SQLite 中更新,加载器是否会传递更新的数据,如果不与内容提供程序一起使用?

我试图找到上述问题的令人信服的答案,但找不到。请帮忙。

【问题讨论】:

  • LoaderManagerLoaders 一起使用,而不仅仅是与CursorLoaders 一起使用

标签: android android-contentprovider android-loader


【解决方案1】:
  1. Lo​​ader 是一种无需在 UI 线程上执行计算即可为您的活动/片段加载信息的方法。它可以与内容提供程序一起使用,或者您可以使用 Loader/AsyncTaskLoader 的子类来访问您自己选择的数据。您可以在here 找到有关如何以及何时使用加载器的更多信息。
  2. 当内容提供者可用时,最好使用内容提供者来访问数据。它们由系统维护,是确保所提供数据的一致性的好方法。您可以创建自己的内容提供程序以将数据从一个应用程序提供给另一个应用程序。更多信息可以在here找到。
  3. 您可以按照本指南第 7 节here 中的信息为 sqlite 数据库创建加载程序。

【讨论】:

  • 如果数据在 SQLite 中更新,加载器是否会传递更新的数据,如果不与 content provider 一起使用?
  • @DarshanKapasi 当然可以,只要您在需要的地方致电ContentResolver#notifyChange
  • 我已更新我的答案以反映您对问题的编辑。
  • @pskink,感谢您的回复。您的意思是我们不需要使用 ContentResolver#notifyChange 在使用内容提供程序时不需要。如果是,为什么?
  • @DarshanKapasi no in ContentProvider 你也需要使用它,比如herehere
猜你喜欢
  • 2015-10-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-22
  • 2021-07-07
  • 1970-01-01
  • 1970-01-01
  • 2011-02-12
相关资源
最近更新 更多