public long getDoneLength(int mixId, long startPos) {
SQLiteDatabase db = dbOpenHelper.getWritableDatabase();
long doneLength = 0;
Cursor cursor = db.rawQuery("select doneLength from fragment where mixId=? and startPos=?", new String[]{String.valueOf(mixId), String.valueOf(startPos)});
while (cursor.moveToFirst()) {
doneLength = cursor.getLong(0);
}
cursor.close();
return doneLength;
}
答案 0 :(得分:1)
这看起来像一个无限循环。您应该if (cursor.moveToNext()) {...}
,而不是while
。
答案 1 :(得分:0)
cursor.moveToFirst只应调用一次。如果您想知道光标是否为空,请使用
cursor.isAfterLast()
此致 斯特凡