我想问下为什么能在contentprovider的oncreate方法的db对象

我想问下为什么能在contentprovider的oncreate方法的db对象

程序一启动就调用contentprovider的oncreate方法,从而就得到sqlitedatabase对象,但是当另一个程序访问这个程序的contentprovider的时候,例如insert,里面的sqlitedatabase对象不是空指针了吗?还是说每次另一个程序增删查改都会先调用自定义的contentprovider的oncreate方法?

求解。

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
提问者 shammgod4342601 2017-10-08 17:37:25

额,我想问的是oncreate方法中得到db对象,但是另一个程序每次调用insert是都要用到db对象的,而db对象是在oncreate里面实例化的,那么在insert里面的db对象不是为空吗?就是说我的意思的不需要在insert,delete这些方法里面都加上 sqlitedatabase db = dbhelper.getwritedatabase()?而是只需要在oncrea方法里面加?

  • 因为db是全局的,onCreate()中创建后,在其他方法中就可以直接使用。
    2017-10-08 21:32:59
好帮手慕雪 2017-10-03 20:48:23

只有当本数据库不存在的时候才会执行oncreate方法,并且不管调用多少次,只会走一次oncreate方法。祝:学习愉快

  • 这说的是数据库oncreate()的问题,ContentProvider中的oncreate()也是这样吗
    2017-10-06 20:27:35
  • ContentProvider中的oncreate()方法也是程序启动ContentProvider创建的时候调用。
    2017-10-07 00:33:44
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Android网络操作与数据存储2018版
  • 参与学习           人
  • 提交作业       307    份
  • 解答问题       1613    个

本专题是联网及数据处理的必备技能。课程从网络基础知识到线程间协同工作、异步下载处理。介绍了Android内外部文件存储、轻量级数据库SQLite的使用。利用屏幕适配、状态保持、百度地图解决实际问题。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师