DocumentFile から File オブジェクトを取得することは何とか可能ですか?
いいえ。
ちょっとしたトリックで、ファイルの実際のパスを取得できます
確実ではありません。結局のところ、ストレージ アクセス フレームワークでは、実際のファイルが存在する必要はありません。さまざまなDocumentProvider実装は、必要になるまでデータがデバイスにローカルに保存されないクラウド サービスで機能します。それを超えて、使用しているアプローチは、Android OS バージョンは言うまでもなく、デバイスによって異なる可能性がある内部実装に依存しています。さらに、パスを取得しても必ずしもデータにアクセスできるとは限りません。その場所へのファイルシステム アクセス権がない可能性があるためです (たとえば、 によって内部ストレージに保持されているファイルDocumentProvider)。
画像からexifデータを取得する
インターネットで を検索して見つけた、ストリームを操作できる EXIF コード (これまたはこのなど) とともに、ストリームを使用しますandroid exif stream。
画像を回転する機能 (これは、一時画像を作成し、古い画像を削除して、一時画像の名前を変更することで可能になります)
ローカル コピーを作成し、画像を回転してからDocumentFile、OutputStream. その「ローカル コピー」が RAM だけにあるか、ディスク上の実際のファイルである必要があるかは、ローテーションをどのように計画しているかによって少し異なります。