我的应用程序将图像存储在SD卡上。删除SD卡后,我的应用程序将被强制关闭。我想改变它,而不是强制关闭,我想在移除SD卡时将这些图像放在内部存储器上。有什么建议吗?
编辑1: 日志中没有例外。我可以看到我的应用程序在卸载媒体时被杀死,但我不知道为什么。
09-19 12:14:33.128: W/ActivityManager(27117): Killing processes unmount media at adjustment 7
09-19 12:14:33.128: W/ActivityManager(27117): Killing ProcessRecord{408f6700 17535:com.google.android.apps.maps/10074} (adj 11): unmount media
09-19 12:14:33.128: W/ActivityManager(27117): Killing ProcessRecord{40a99fd8 28691:cn.wps.livespace/10049} (adj 9): unmount media
答案 0 :(得分:0)
您可以检查应用启动时是否已卸载SD卡。请使用此处的代码段并阅读android开发者网站上的更多信息。 Using the External Storage
如果要显示内部存储中的图像,则应将这些图像打包到.apk文件中。只需将它们放入/ asset文件夹,然后使用AssetManager读取它们,甚至将它们复制到内部存储中以备将来使用。
答案 1 :(得分:0)
File temp;
if (android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED))
temp =new File(android.os.Environment.getExternalStorageDirectory(),"ImageFile");
else
temp=ctx.getCacheDir();
每次读取和写入数据时都要打电话......