如何尝试找到此错误的根源?
我收到了来自 Flurry 的崩溃日志/堆栈跟踪,但它没有向我提供任何有关应用程序崩溃起源的指示。 (即 Activity 或行号)
我在本地测试的任何设备上都没有遇到任何异常,所以我有点不知道从哪里开始。
用户尚未通过 Google Play 报告崩溃,因此我没有 Google Stack 跟踪。该报告来自 SONY XPERIA Z1 和两个单独的 SONY C6903 XPERIA LTE。
该应用程序有大约 4000 个用户,因此我猜这只是这些用户所做的不寻常的事情或仅发生在这两个设备上。
什么类型的错误/bug会导致这种类型的错误?
java.lang.IllegalStateException
android.view.View$1.onClick(View.java:3954)
android.view.View.performClick(View.java:4569)
android.view.View$PerformClick.run(View.java:18553)
android.os.Handler.handleCallback(Handler.java:733)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:212)
android.app.ActivityThread.main(ActivityThread.java:5151)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:515)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:877)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693)
dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:515)
android.view.View$1.onClick(View.java:3949)
android.view.View.performClick(View.java:4569)
android.view.View$PerformClick.run(View.java:18553)
android.os.Handler.handleCallback(Handler.java:733)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:212)
android.app.ActivityThread.main(ActivityThread.java:5151)
java.lang.reflect.Method.invokeNative(Native Method)
java.lang.reflect.Method.invoke(Method.java:515)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:877)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:693)
dalvik.system.NativeStart.main(Native Method)
编辑:应用程序中的所有 android:onClick 事件在 Activity 类中都有相应的方法,格式如下:
public void methodName(View view) {
}
最佳答案
您的任何 View 是否在 UI 线程之外发生了更改?也许管理 .onClick 的 View 或从 onClick() 本身触发的方法正在访问已更改的 View ,但 UI 线程不知道
关于java - 市场上的 Android 应用收到 java.lang.IllegalStateException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23632831/