Android 具有多个 WHERE 选择的内容提供商查询
Android Content Provider Query with multiple WHERE selection
我正在使用 androids 内容提供程序Media.Store 外部图像来获取图像文件路径。
我只想获取 _ID 等于以下任一图像的文件路径:-
122234、33245、66782、55782。
那么我该如何构建 Cursor.query 来实现这一点。
我现有的代码:-
Uri uri;
Cursor cursor;
int column_index_data ;
uri = android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
String order = MediaStore.MediaColumns.DATE_ADDED + " "+ "desc";
String[] projection = { MediaStore.MediaColumns.DATA};
cursor = getContentResolver().query(uri, projection, null, null, order);
column_index_data = cursor.getColumnIndexOrThrow(MediaStore.MediaColumns.DATA);
你应该可以直接写WHERE子句。例如:
Cursor c = getContentResolver().query(uri, projection, "_id IN (1, 2, 3, 4)", null, order);
我正在使用 androids 内容提供程序Media.Store 外部图像来获取图像文件路径。
我只想获取 _ID 等于以下任一图像的文件路径:- 122234、33245、66782、55782。
那么我该如何构建 Cursor.query 来实现这一点。
我现有的代码:-
Uri uri;
Cursor cursor;
int column_index_data ;
uri = android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
String order = MediaStore.MediaColumns.DATE_ADDED + " "+ "desc";
String[] projection = { MediaStore.MediaColumns.DATA};
cursor = getContentResolver().query(uri, projection, null, null, order);
column_index_data = cursor.getColumnIndexOrThrow(MediaStore.MediaColumns.DATA);
你应该可以直接写WHERE子句。例如:
Cursor c = getContentResolver().query(uri, projection, "_id IN (1, 2, 3, 4)", null, order);