我正在使用libgdx编写一个应用程序,并且遇到了一个奇怪的问题。
当游戏加载时,效果很好。 退出游戏并重新加载它的那一刻 - 图形都被打乱了(即 - 它的加载与其他纹理交换的纹理,所以我可能将地面的纹理替换为主角的纹理...... )。
从历史记录中清除游戏(我假设是从缓存中进行的?)意味着游戏下次会完美加载。
那么有没有办法告诉Android(从我假设的配置)在我'关闭'时不缓存应用程序?
答案 0 :(得分:0)
在您的活动中使用这些行: -
this.finish();
Process.killProcess( Process.myPid() );
将终止你的整个应用程序(假设它在一个进程中运行)它也将释放任何相关的内存。
这可能有助于游戏在下次申请时完全加载完全被杀死。
答案 1 :(得分:0)
您可以使用以下代码删除应用程序的catch,从活动的onDestroy()
调用它,从您要退出应用程序的位置
public static void deleteCache(Context context) {
try {
File dir = context.getCacheDir();
if (dir != null && dir.isDirectory()) {
deleteDir(dir);
}
} catch (Exception e) {}
}
public static boolean deleteDir(File dir) {
if (dir != null && dir.isDirectory()) {
String[] children = dir.list();
for (int i = 0; i < children.length; i++) {
boolean success = deleteDir(new File(dir, children[i]));
if (!success) {
return false;
}
}
}
return dir.delete();
}