Android 6.0 Developer Preview(APIレベル23)は、追加のアプリなしで、外付けの取り外し可能なUSB OTGストレージをネイティブにマウントできます(詳細については、以下を参照してください: https://www.androidpolice.com/2015/05/28/Android-m-feature-spotlight-external-storage-be-ad-opted-as-true-internal-storage-or-accessed-normally-with-no-additional-apps / )。
ユーザーがUSB OTGストレージを接続すると、システムストレージメニューに表示され、組み込みのファイルマネージャーを使用してアクセスできます。ユーザーは、ルート権限なしで新しい組み込みファイルマネージャーを使用して、USB OTG外部ストレージ上のすべてのファイルにアクセスできます。
USB OTGストレージをAndroidデバイスに接続すると、/storage/A03E-1DF5
および/mnt/media_rw/A03E-1DF5
、ただしこのフォルダにアクセスするにはルート権限が必要です。
私はAndroidメディアプレーヤーアプリに取り組んでいます。
Android 6.0ルート権限なしの組み込みファイルマネージャーのようなアプリでUSB OTGストレージ上のファイルにアクセスすることは可能ですか?
追伸アプリで既にcheckSelfPermission
およびrequestPermissions
関数を使用していますが、アプリには既にAndroid.permission.READ_EXTERNAL_STORAGE
およびAndroid.permission.WRITE_EXTERNAL_STORAGE
(詳細については、以下を参照してください: https://www.androidpolice.com/2015/07/15/Android-m-feature-spotlight-apps-now-need-your-permission-to-read -and-write-to-external-storage / )、ただし、これらの権限は内部ストレージ(MicroSD)のみに影響するように見え、USB OTGにはそのような詳細な権限はありません。
Android 6、 SB Media Support ドキュメントによると、 Storage Access Framework が唯一の利用可能なメカニズムであるようです:
Android 6.0では、採用されていないデバイスはポータブルとみなされます。プライバシーとセキュリティ上の理由から。