ローカル URI パスを完全なパスに変換するコードを実行しています。しかし、このコードは nexus シリーズ (Android 4.1 以降のジェリー ビーン) では機能しないようです。
コード
String[] proj = { MediaStore.Images.Media.DATA };
Cursor cursor = App.getInstance().getContentResolver().query(contentUri, proj, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
私はstackoverflowでさまざまなスレッドを読みましたが、最も相対的なものはこれです。しかし、提供されているソリューションを使用しても、問題は解決しません。
基本的に、コードによって返されるパスは次のようなものです: /storage/emulated/0/folder_we_are_trying_to_access
ただし、nexus にはエミュレートされたストレージはありません。さまざまなファイルマネージャーからパスを確認しようとすると、パスは次のようになります。
/storage/sdcard0/folder_we_are_trying_to_access
どんな助けでも大歓迎です。前もって感謝します。