光标我:Accounts.java安卓:如何关闭,从类返回到活动
public class Accounts{
private SQLiteDatabase dbConfig;
public Cursor list(Context context, String db, String where, String order) {
DBHelper dbHelper = new DBHelper(context, db);
dbConfig = dbHelper.getReadableDatabase();
Cursor c = dbConfig.query("accounts", new String[]{ "iId","sName"}, where, null, null, null, order);
return c;
}
}
和:MainActivity.java
Accounts account = new Accounts();
Cursor cursor = account.list(getApplicationContext(), globalDB, null, null);
while (cursor.moveToNext()) {
int id = cursor.getInt(0);
String name = cursor.getString(1);
}
cursor.close();
运行我的应用程序得到一些logcat的消息像:
close() was never explicitly called on database...
防止它的最佳方法是什么?我如何关闭从其他课程返回的游标? 感谢
你需要关闭db.if没有完成,那么确保你在活动被破坏时关闭它 –
@Vipul不,你不需要关闭db。请参阅http://stackoverflow.com/a/7999153/385478 –