我有一个游标,我在下面的代码中使用。但是我想在光标被使用并且不再需要之后关闭光标。问题是游标被用在return语句中,但是在返回语句后我无法关闭它,因为这是无法访问的代码。它在return语句中使用,所以我无法在该行之上关闭它。我如何关闭光标?这不像旧的managedQuery,我认为你必须关闭它。在哪里关闭游标?
public String getPath(Uri uri) {
String[] projection = { MediaStore.Audio.Media.DATA };
Cursor cursor = getContentResolver().query(uri, projection, null, null, null);
int column_index = cursor
.getColumnIndexOrThrow(MediaStore.Audio.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
// cursor.close() <--- not possible because it is unreachable code after return
}
我忘了在我原来的帖子中添加。这是在一个服务,而不是一个活动,所以我想我不能在一个服务中使用startManagingCursor()。 – Kevik