1

私が取り組んでいるプロジェクトでは、写真は に保存され/sdcard/<app made folder>、ファイル プロバイダーを使用して、ここに保存されている写真を他のアプリに共有しています。そのため、ファイル プロバイダーがファイルの uri を取得しようとすると、パスを返す getCanonicalPath() が呼び出されます/storage/emulated/legacy/<our folder>/<our file>

ファイルプロバイダーを介してデバッグすると、ファイルパスをチェックすると、チェックが行われることがわかります/storage/emulated/0

私はやってみました:

<external-path path = "storage/emulated/legacy/JCG Camera" name="share_cam_images2" />

filepaths.xml で、ただし、ファイル プロバイダーがそれをチェックすると、次のように解決されます。<storage/emulated/0/storage/emulated/legacy/JCG Camera/<file>

/storage/emulated/legacyファイル プロバイダーのパスを指定するにはどうすればよいですか?

4

1 に答える 1

0

外部パスでファイル プロバイダーのパスを指定するという問題の正確な解決策は見つかりませんでしたが、Environment.getExternalStorageDirectory()/sdcard/ を指定する代わりに、からのパスにファイルを保存することで回避しました。

于 2016-01-25T23:30:01.183 に答える