我的应用程序中有一个DB,通常可以正常工作 现在,我添加了一个带有更新功能的小部件,它也可以访问数据库 偶尔,我得到这个错误,但只能从小部件更新方法中获得。
Caused by:java.lang.NullPointerException
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:118)
从小部件更新方法中访问数据库是否存在某种限制?
答案 0 :(得分:1)
您不应该从小部件的BroadCast接收器(onUpdate()
)执行任何磁盘IO。启动获取数据并执行实际更新的服务。您可能希望使用IntentServcie
,因为它默认启动工作线程。