-1
を探します。しかし、クエリ結果はpdf.doc.xlsだけであり、他のものではありません。私はかなり混乱しています。私は答えの多くは一日を過ごした後、私は次のコードのように、---- [doc.docx.xls.xlsx.ppt.pptx.pdf]などのオフィスファイル
private void doSearch() {
String[] projection = new String[]{
MediaStore.Files.FileColumns.DATA,
MediaStore.Files.FileColumns.TITLE,
MediaStore.Files.FileColumns.MIME_TYPE};
String selection = MediaStore.Files.FileColumns.MIME_TYPE + " = ? "
+ " or " + MediaStore.Files.FileColumns.MIME_TYPE + " = ? "
+ " or " + MediaStore.Files.FileColumns.MIME_TYPE + " = ? "
+ " or " + MediaStore.Files.FileColumns.MIME_TYPE + " = ? "
+ " or " + MediaStore.Files.FileColumns.MIME_TYPE + " = ? "
+ " or " + MediaStore.Files.FileColumns.MIME_TYPE + " = ? "
+ " or " + MediaStore.Files.FileColumns.MIME_TYPE + " = ? ";
String[] selectionArgs = new String[]{
"application/vnd.openxmlformats-officedocument.presentationml.presentation",
"application/vnd.openxmlformats-officedocument.wordprocessingml.document",
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
"application/vnd.ms-powerpoint",
"application/msword",
"application/pdf",
"application/vnd.ms-excel"};
Cursor cursor = getContentResolver().query(MediaStore.Files.getContentUri("external"),
projection,
selection,
selectionArgs,
MediaStore.Files.FileColumns.DATE_MODIFIED + " desc");
String fileName;
String filePath;
while (cursor.moveToNext()) {
String type = cursor.getString(cursor.getColumnIndex(MediaStore.Files.FileColumns.MIME_TYPE));
fileName = cursor.getString(cursor.getColumnIndex(MediaStore.Files.FileColumns.TITLE));
filePath = cursor.getString(cursor.getColumnIndex(MediaStore.Files.FileColumns.DATA));
Log.e("ryze_text", fileName + " -- " + type + "--" + filePath);//Here is the result
}
cursor.close();
cursor = null;
}
これは、リストされたものだけでなく、**すべての**ファイルを返します。 –
はい、今度は、結果のサフィックスをフィルタリングして、必要なファイルを取得できます –