想学managedquery?这篇干货文章别错过!

吉云

话说,今天我倒腾数据库,想从里头扒拉点数据出来瞅瞅。你知道的,安卓给我们提供一个叫 managedQuery 的方法,说是能简化这事儿。

我一开始还挺高兴,屁颠屁颠地就去用。结果?发现这玩意儿过时!

当时我就懵,心想这可咋整?不过咱是谁?遇到问题就得解决问题!于是我就开始在网上各种搜,看看有没有啥替代方案。

想学managedquery?这篇干货文章别错过!

你还别说,真让咱给找到!也不复杂,就是换个方法用。以前是用 managedQuery,现在直接用 getContentResolver().query() 就完事。

下面我给你们演示一下我当时是怎么一步步弄的:

实践出真知

  • 第一步,当然是确定要查 我当时是要搞手机相册里的照片,所以得知道照片存在哪儿,也就是那个啥 URI。

    想学managedquery?这篇干货文章别错过!

  • 第二步,就是写查询条件。 就像你去超市买东西,总得告诉售货员你要买啥牌子、啥口味的?这里也一样,得告诉数据库你想查

  • 第三步,执行查询! 这一步最简单,直接调用 getContentResolver().query(),把前面准备好的东西都丢进去就行。

    想学managedquery?这篇干货文章别错过!

  • 拿到结果。 查询结果会放在一个叫 Cursor 的东西里,然后你就可以从这个 Cursor 里头把数据一条一条地掏出来用。

对,我还遇到一个坑。我想用 managedQuery 实现分组查询(group by),结果发现这玩意儿压根不支持!

想学managedquery?这篇干货文章别错过!

当时我那个郁闷,感觉自己像个无头苍蝇一样乱撞。不过咱可不是轻易放弃的主儿。我灵机一动,想个“歪招”,虽然不咋正规,但好歹是把问题给解决。

具体咋搞的,我就不细说,反正就是绕个弯,用一些比较“猥琐”的手段。如果你也遇到类似的问题,可以私下里找我交流交流。

这回经历让我明白一个道理:遇到问题不要慌,多动动脑筋,总能找到解决办法的。实在不行,就用点“非常规”手段,只要能达到目的就行!

好,今天就分享到这儿。希望我的经历能对你有所帮助!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]