Androidでassetsフォルダからデータを読み込む

 通常アプリで使うデータは、res/drawableやres/rowに置く事で、データをIDで管理する事が出来るようになる。

但し、下記のリファレンスにある通り、元ファイル名で扱いたかったり、フォルダ構成が必要な場合は、assetsフォルダへ格納するとよい。

IDを管理しない分のリソースを節約できるという利点もあるようなので、大量のデータを置く場合にはassetsフォルダを活用するのがよさそう。

http://developer.android.com/intl/ja/guide/topics/resources/providing-resources.html


利用するにはAssetManagerクラスを使用する。

AssetManagerは、ContextクラスのgetAssetsメソッドで取得できる。


    InputStream is  = producer.mContext.getAssets().open("test.png");
    Bitmap      img = BitmapFactory.decodeStream(is); is.close();