LoginSignup
1
0

More than 3 years have passed since last update.

Android 端末内にデータを保存する際の指針

Posted at

概要

Android 端末内にデータを保存する際の指針をまとめました。

包括的情報

Data and file storage overview 参照のこと。

ストレージ選択の指針

Android Storage Selection Chart.png

アプリ内のみで利用されアンインストール時に削除されるかどうか?

  • 他のアプリとデータを共有する場合は no, それ以外は yes1

内部ストレージが好ましいかどうか?

  • 存在の保証2が必要なデータは内部ストレージにすることが必須。
  • アプリの基本的な機能3から必要とされるデータは内部ストレージが好ましい。
  • 大量のデータを保存する場合は外部ストレージが好ましい。

メディアファイルかどうか?

  • Android はメディア情報を統合的に扱う Media Store Framework を提供しているため、これを利用することが好ましい。

構造化されたデータの扱い

◆ 一般論

構造化されたデータについては、key-value pair の場合は App preferences, それ以外の構造の場合は Database という指針が一般的なようです。

◆ 個人的見解

SharedPreferences のデフォルトの DataStore を利用するのは避けたいところです。理由は、SQLite のような汎用的なマイグレーションパスが存在しないためです。

ここら辺は、時が来たら追記しようと思います。

App Specific Files

Access app-specific files 参照のこと。

MediaStore API

Access media files from shared storage 参照のこと。

Storage Access Framework

Access documents and other files from shared storage 参照のこと。


  1. アプリ内のみで利用されるがアンインストール時に削除しないという選択肢は、アンインストール後にゴミを残してしまうため、選択肢としてあり得ない。 

  2. 外部ストレージは取り外される可能性を常に考慮する必要がある。 

  3. アプリの起動など。 

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0