android studio assets folderは何が違うの?resとの違いは?
なんとなく、resフォルダは画像とテキストを置く場所、という理解で勧めていると、ふとassetsフォルダとの違いってなんだったっけ、となってしまいます。せっかくなので改めて整理します。
assets フォルダと res フォルダは、Android Studio プロジェクト内で異なる役割を果たします。
res フォルダ (リソースフォルダ):
- res フォルダは、アプリのリソースを格納する場所です。
- 画像、レイアウト、文字列、アイコン、色などのリソースはここに配置されます。
- リソースID が自動的に生成され、アプリ内でこれらのリソースにアクセスできます。
- 例えば、R.drawable.icon のようにリソースを参照できます。
assets フォルダ:
- assets フォルダは、未加工のファイルを格納する場所です。
- テキストファイル、音声ファイル、ビデオファイルなどがここに配置されます。
- リソースIDは付与されません。代わりに AssetManager を使用してファイルにアクセスします。
つまり、アプリで画一的に使用するようなリソースはルールに基づいてresに入れておけば自動的にアプリで使えるようになるという点が便利である。resが対応していないデータについてはassetsにおいておいて、自身のプログラムで利用する。という感じでしょうか。