我有一个每天在同一时间运行的AlarmManager。 警报的目的是在sqlite和MySQL之间同步应用程序。
事情就是当我使用我的sqlite数据库时,我使用:
SQLiteDatabase db = this.getWritableDatabase();
这一行给了我一个NPE,可能因为它是null(因为该方法是在应用程序之外调用的)
我怎么能把这一行写成与上下文无关的?
答案 0 :(得分:0)
getDatabaseLocked()
中的NPE是因为您将null
Context
传递给SQLiteOpenHelper
构造函数。
答案 1 :(得分:0)
The Context that you are passing to the SQLiteOpenHelper constructor is null.
传递application context.make一个java类并使用应用程序类扩展它并返回context.also将此类添加到应用程序标记中的清单中,如:
android:name="com.yourpkgname.yourclassname"