私のアプリでは、カメラとギャラリーから画像を選択してImageViewに読み込むことができます。Googleドライブからファイル名を取得URI
私は、画像を選択するために、関連するアプリケーションを開くには、次のコードを使用しています:
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
問題は、Googleドライブです。ユーザーがGoogleドライブから画像を選択した場合、私はこのようなURIを取得しています:内容://com.google.android.apps.docs.storage.legacy/enc%3DHxtpLaMr66OMOzDOKTRZ-5ed7q7Szj7F7nC0IlxBnV8hx2P1%0A
私が生成することができていますビットマップですが、ファイル名を取得できません。
InputStream input = context.getContentResolver().openInputStream(uri);
Bitmap bitmap = BitmapFactory
.decodeStream(input);
私が選択したファイル名を表示する必要があります。
GoogleドライブのURIからイメージ名を抽出するのを手伝ってください。
最初の方法は、その名前のファイルを自分で、携帯電話に別のURIに保存します。
KitkatにチェックインされているDocumentFileオブジェクトが作成されていますが、getName()メソッドはnullを返しています。表示名kitkat以下はどうすれば入手できますか? –
- 上記のコメントを確認してください –
@RohanPatel:これは 'DocumentFile'の制限です。私は[このライブラリではより良いバージョンです](https://github.com/commonsguy/cwac-document)です。あるいは、 'ContentResolver'を使って' OpenableColumns'を 'query()'することもできます。 – CommonsWare