当我尝试启动AndEngine活动时,出现以下错误:
ERROR/InputDispatcher(21374): channel '4122e148 my.package.AcGame (server)' ~ Channel is unrecoverably broken and will be disposed!
该应用程序不会崩溃,但有一个黑屏,设备对按下“返回”或“主页”按钮没有反应。
有人知道问题出在哪里吗?
你用过其他UI线程吗?你不应该使用超过1个UI线程,让它看起来像一个三明治。这样做会导致内存泄漏。
我在两天前解决了一个类似的问题。。。
简而言之:主线程可以有许多UI线程来执行多个工作,但如果其中有一个子线程包含UI线程,UI线程可能尚未完成其工作,而其父线程已经完成其工作,这会导致内存泄漏。
例如为了碎片
getActivity().runOnUiThread(new Runnable(){
public void run() {//No.1
ShowDataScreen();
getActivity().runOnUiThread(new Runnable(){
public void run() {//No.2
Toast.makeText(getActivity(), "This is error way",Toast.LENGTH_SHORT).show();
}});// end of No.2 UI new thread
}});// end of No.1 UI new thread
我的解决方案如下:
getActivity().runOnUiThread(new Runnable(){
public void run() {//No.1
ShowDataScreen();
}});// end of No.1 UI new thread
getActivity().runOnUiThread(new Runnable(){
public void run() {//No.2
Toast.makeText(getActivity(), "This is correct way",Toast.LENGTH_SHORT).show();
}});// end of No.2 UI new thread
供你参考。
我是台湾人,我很高兴在这里再次回答。
我想你的某个地方有内存泄漏。你可以在这里找到避免内存泄漏的方法。你也可以在这里了解追踪它的工具。
我看到该错误的最常见原因之一是,当我试图在不在前台的活动中显示警报对话框或进度对话框时。例如,显示对话框的后台线程正在暂停的活动中运行。
我对术语的理解如下 1) 中断 是硬件启动的“通知”,用于调用操作系统运行其处理程序 2) 陷阱 是由软件启动的“通知”,用于调用操作系统以运行其处理程序 3) 故障 是处理器在发生错误但可恢复时引发的异常 4) 中止 是处理器在发生错误但无法恢复时引发的异常 为什么我们称之为而不是? 分割错误 是指程序试图访问操作系统未分配或不允许访问的内存。 我的经验(主要是在测试代码时)是,每当程序抛出
URL类 来自服务器的最终响应:
突然有一天,糟糕的事情发生了,而你对此束手无策。对于这种情况,Rust 有 panic!宏。当执行这个宏时,程序会打印出一个错误信息,展开并清理栈数据,然后接着退出。出现这种情况的场景通常是检测到一些类型的 bug 而且程序员并不清楚该如何处理它。 当出现 panic! 时,程序默认会开始 展开(unwinding),这意味着 Rust 会回溯栈并清理它遇到的每一个函数的数据,不过这个回溯并清理的
很抱歉,我对Java知之甚少。我得到了这个代码来接管。基本上,我在 当我运行代码时。 下面是解析XML的块 这是Improts,不确定是否需要这样做 这是XML文件
我刚刚开始了一个新的项目,正在尝试连接到FireBase。当我试图构建我的项目时,我得到了一个错误:无法解析Android应用程序模块的Gradle配置,所以我查看了构建,它告诉我jCenter()不推荐使用,我应该删除它。当我把它取下来的时候,一切都很好。但是,当我尝试连接到Firebase时,我得到了错误:AbstractDynamicObject$CustomMessageMissingMe
只有当我点击图标返回应用程序时,它才会被破坏。如果我打开正在运行的应用程序列表并从那里返回,它将正常恢复。我在onDestroy()函数上设置了一个断点,因为我找不到在它之前调用的任何代码。这是它调用的线程: 看起来它收到了一些消息,从某处破坏了我的活动。在循环器中有一个名为msg的变量。这就是它的价值: 有人知道这里发生了什么吗?如何使我的应用程序恢复正常,就像我从正在运行的应用程序列表中选择它