最終更新:2019-01-23 (水) 11:49:23 (536d)  

Android/外部ストレージ
Top / Android / 外部ストレージ

概要

  • 共有外部ストレージにパブリック データを保存します
  • 外部ストレージに保存されたファイルは誰でも読み取り可能です
  • すべての Android 互換端末は、ファイルの保存先として共有の「外部ストレージ」をサポートしています。
  • これは、リムーバブル ストレージ メディア(SDカードなど)か、(取り外しできない)内部ストレージです。 外部ストレージに保存されたファイルは誰でも読み取り可能です。
  • また、USB マスストレージからパソコンへのファイル転送を有効にすると、ユーザーがファイルを変更することもできます。

パーミッション

確認

  • Environment.getExternalStorageState?()

Environment.getExternalStorageDirectory()

  • 外部ストレージのディレクトリを取得する。
  • ただし、直接ここへ何かを置くべきではない。

Environment.getExternalStoragePublicDirectory(String)

  • getExternalStoragePublicDirectory?(Environment.DIRECTORY_DOWNLOADS)):
    • /storage/emulated/0/Download
  • 外部ストレージ領域の最上位パス。

プライベートファイル

Context.getExternalFilesDir()

Context.getExternalFilesDirs?()

  • Android 4.4
  • /storage/emulated/0/Android/data/{パッケージ名}/files
  • アプリ固有の外部ストレージ領域。
  • アプリ固有のデータを保存するという点ではContext.getFilesDir()と同様だが、以下の2点が重要な違い
  • 常に利用可能というわけではない
  • WRITE_EXTERNAL_STORAGE?権限があれば他アプリからの書き込みが可能

Context.getExternalCacheDir()

実際のパス