代码适用于姜饼(2.3.6)而非ICS(4.0.4) 我有一个应用程序是在安卓2.3.6及之前版本上开发和测试的 及以下。它很好用 我在Android 4.0.4的新Micromax A110上运行应用程序,当我从活动A启动活动B并按下后退按钮(或从A启动活动C/D/E)时,应用程序崩溃,错误日志如下vv
01-10 18:35:44.372:E/AndroidRuntime(18378):致命异常:计时器-1 01-10 18:35:44.372:E/AndroidRuntime(18378): java.lang.IllegalStateException:必须从的主线程调用 过程01-10 18:35:44.372:E/AndroidRuntime(18378):在 FragmentManagerImpl.execPendingActions(FragmentManager.java:1373) 01-10 18:35:44.372:E/AndroidRuntime(18378):在 FragmentManagerImpl.executePendingTransactions(FragmentManager.java:437) 01-10 18:35:44.372:E/AndroidRuntime(18378):在 FragmentManagerImpl.popbackbackstackimmediate(FragmentManager.java:454) 01-10 18:35:44.372:E/AndroidRuntime(18378):在 android.app.Activity.onBackPressed(Activity.java:2134)01-10 18:35:44.372:E/AndroidRuntime(18378):在 com.vwap.friends.MygoBack(MyDialog.java:90)01-1018:35:44.372: E/AndroidRuntime(18378):在 com.vwap.friends.MyDialog$3.run(MyDialog.java:83)01-10 18:35:44.372:E/AndroidRuntime(18378):在 Timer$TimerImpl.run(Timer.java:284)代码适用于姜饼(2.3.6)而非ICS(4.0.4) 我有一个应用程序是在安卓2.3.6及之前版本上开发和测试的 及以下。它很好用 我在Android 4.0.4的新Micromax A110上运行应用程序,当我从活动A启动活动B并按下后退按钮(或从A启动活动C/D/E)时,应用程序崩溃,错误日志如下vv,android,android-4.0-ice-cream-sandwich,Android,Android 4.0 Ice Cream Sandwich,01-10 18:35:44.372:E/AndroidRuntime(18378):致命异常:计时器-1 01-10 18:35:44.372:E/AndroidRuntime(18378): java.lang.IllegalStateException:必须从的主线程调用 过程01-10 18:35:44.372:E/AndroidRuntime(18378):在 FragmentManagerImpl.execPendingActions(FragmentManager.java:137
- 我还完全不知道片段的概念(我计划尽快完成这项工作),看起来错误与此有关
final Runnable YOURVIEW = new Runnable()
{
public void run()
{
SampleMethod(); // Put your Method What you want change
handler.postDelayed(this, timeout);
}
};
handler.postDelayed(changeView, timeout);
您正在主线程上执行网络操作。如果目标SDK为11或更高,则会引发
NetworkOnMainThreadException
,因为此行为会阻止UI并导致应用程序无响应
即使我面临类似的问题,您也可以使用一个来解决这个问题,将数据加载到它的
doInBackground(..)
中,但我认为您必须包含android\u support\u v4.jar
文件,以便在所有版本的android上兼容。似乎无法格式化logcat输出,帮助?在遇到问题的地方添加一些代码是ChandlerDialog
您的一个类?你能把它的来源贴出来并在第83行做标记吗?