我有一个Service with Service类,它在backgroud和其他活动中运行。在我从我的数据库获取数据的活动中,我做了:
databaseHelper = new DBNotifyHelper(this);
Cursor c = databaseHelper.getNotify(myState, myVariable, myVariable2);
我的DBNotifyHelper中的getNotify方法是:
public Cursor getNotify (String myState, String myVariable, String myVariable2)
{
return getReadableDatabase().rawQuery("SELECT * FROM Notify WHERE State = ? AND myVariable= ? AND myVariable2= ?", new String[] {myState, myVariable, myVariable2});
}
它工作正常,但它在Service中不起作用。我在服务中得到同样的东西?我不使用游标?请帮帮我(对不起我的英文)。
答案 0 :(得分:0)
似乎,问题是迁移是因为从不同线程并发访问DB。在实例化此SQLiteOpenHelper(构造函数参数)时尝试使用Application Context
,这样就不会泄漏其他一些Context。
如果没有帮助,请显示您的SQLiteOpenHelper
代码。
编辑:点击带有NullPointerException的字符串,给我们一个字符串,从中抛出它。