0

我的应用程序将图像存储在 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
4

2 回答 2

0

您可以在应用启动时检查 sd 卡是否已经卸载。请使用此处的代码片段并在 android 开发者网站上阅读更多信息。 使用外部存储

如果要显示内部存储中的图像,则应将这些图像打包到 .apk 文件中。只需将它们放入 /asset 文件夹,然后使用AssetManager读取它们,甚至将它们复制到内部存储中以供将来使用。

于 2012-09-19T04:21:15.053 回答
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();

每次读写数据时调用...

于 2012-09-19T07:00:36.367 回答