我有一堆适用于所有分辨率的图像(目前我只支持一种分辨率。这是有原因的)。
我的问题是,什么时候适合将图像存储在 assets 文件夹而不是 drawable 文件夹中?
如果您想按原始名称访问图像,最好将图像保存在 assets 文件夹中。然后,您可以使用以下方法获取它们:
AssetManager:AssetManager am = getResources().getAssets();
try {
InputStream is = am.open("image.png");
// use the input stream as you need
} catch (IOException e) {
e.printStackTrace();
}
我希望这有帮助。
您可以随时更改资产文件夹中的文件,并且不会受到任何影响(我的意思是“无”指应用程序的资源)。例如,将图像文件的名称作为参数给出可能很有用。
res/raw 目录中的原始资源和资产之间的区别在于资产的行为类似于文件系统,它们可以被列出、迭代、发现,就像文件一样,而对于原始资源,您需要资源 ID。
来自: http: //mylifewithandroid.blogspot.it/2009/06/assets.html(强调我的)
当您需要使用子文件夹组织事物时,您也可以使用资产。