Android ContentProvider用法解惑
PHPz
PHPz 2017-04-17 17:03:14
0
3
654
PHPz
PHPz

学习是最好的投资!

全部回复 (3)
巴扎黑

不好意思,又自问自答了。这个问题我已经在代码层面解决,解决方案是:

  1. 如果ContentProvider的update、insert、delete会影响到UI的显示,那代码中就不能直接操作DB了,而应该统一使用ContentProvider,同时需要注册ContentObserver进行Uri的监听,以便切换UI。

  2. 如果ContentProvider的操作不会影响UI,那就无所谓了。内部直接操作DB也是可以的。

    迷茫

    根据ContentProvider定义,它是在不同应用中进行数据交换的标准API,当一个应用需要把数据暴露给其他应用时可以使用它,而其他应用可以通过ContentResolver去操作暴露的数据,通过ContentProvider暴露自己的数据操作接口,其他应用就可以通过该接口进行相应的增删改查操作。但通过ContentResolver操作本质就是调用了ContentProvider的操作,而其中的操作使用的还是SQLiteOpenHelper的db。所以个人认为不需要重写,不过这也是个人观点,还是要你自己去试试就知道结果了。

      Peter_Zhu

      应该是的,直接通过数据写的数据是应用私有数据,其他应用无法访问,不过如果DB文件在SD卡里面进行操作就好像可以访问。

        最新下载
        更多>
        网站特效
        网站源码
        网站素材
        前端模板
        关于我们 免责声明 Sitemap
        PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!