安卓:NoClassDefFoundError android.os.AsyncTask

标签 android android-asynctask noclassdeffounderror

几周以来,我发现我的应用程序崩溃越来越多,但出现以下异常

致命异常:java.lang.NoClassDefFoundError android.os.AsyncTask

这段代码已经运行了一个月没有任何问题,现在似乎在某些设备上失败了(75% android 2.3.x 和 25% android 4.0.3) 当我创建一个扩展 AsyncTask 的类的新实例时,它失败了。

我从 UI 线程创建这个类。

如何找不到在 SDK 中定义的类?

最佳答案

是的,看起来这是 Google Play 服务版本之一的问题。参见 https://code.google.com/p/android/issues/detail?id=81083

解决方法是添加:

try {
      Class.forName("android.os.AsyncTask");
}
catch(Throwable ignore) {
      // ignored
}

进入你的Application#onCreate()

这似乎是为了确保根类加载器加载 AsyncTask,以便它可以在 Play 服务中使用。

关于安卓:NoClassDefFoundError android.os.AsyncTask,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27121376/

相关文章:

java - RxJava 测试订阅者/TestSingleSubscriber

java - Android 传感器在单独的线程中注册监听器

java - 尝试使用tomcat在servlet中加载dll时出现NoClassDefFoundError

servlets - java.lang.NoClassDefFoundError : org/apache/commons/lang3/ObjectUtils

android - TextToSpeech android 构建版本不播放音频

android - 在什么情况下我们要添加没有容器的 fragment ?

java - Android AsyncTask 卡住了

android - java.lang.NoClassDefFoundError : javax. 激活.DataHandler

android - 处理人的声音

java - Android - 离开 Activity 时停止所有线程