【问题标题】:Fatal Exception: java.lang.IncompatibleClassChangeError: Couldn't find com.google.a.a.c.a致命异常:java.lang.IncompatibleClassChangeError:找不到 com.google.a.a.c.a
【发布时间】:2017-06-28 09:54:22
【问题描述】:

我在 CrashListics 中从带有操作系统5.0.1 的三星设备中反复得到这个Exception 我在 SO 中搜索了很多,发现这是一个错误三星设备,但找不到任何解决方案。谁能建议我如何处理这个异常(任何解决方案或任何技巧)?

致命异常:java.lang.IncompatibleClassChangeError:找不到 com.google.a.a.c.a 在 libcore.reflect.AnnotationAccess.toAnnotationInstance(AnnotationAccess.java:659) 在 libcore.reflect.AnnotationAccess.toAnnotationInstance(AnnotationAccess.java:641) 在 libcore.reflect.AnnotationAccess.getDeclaredAnnotation(AnnotationAccess.java:170) 在 java.lang.reflect.Field.getAnnotation(Field.java:242) 在 com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.excludeField(未知 资源) 在 com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.excludeField(未知 资源) 在 com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.excludeField(未知 资源) 在 com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.excludeField(未知 资源) 在 com.google.gson.Gson.doubleAdapter(未知来源) 在 com.google.gson.Gson.doubleAdapter(未知来源) 在 com.google.gson.Gson.doubleAdapter(未知来源) 在 com.google.gson.Gson.doubleAdapter(未知来源) 在 com.google.gson.Gson.doubleAdapter(未知来源) 在 com.app.Data.Sessions.LoginSession.createLoginSession(未知 来源) 在 com.app.Data.UserInformation.getInfo(未知 资源) 在 com.app.Main.LocationUpdateService.locationUpdate(未知 资源) 在 com.app.Main.LocationUpdateService.locationUpdate(未知 资源) 在 com.app.Main.LocationUpdateService$1.onLocationChanged(未知 资源) 在 android.location.LocationManager$ListenerTransport._handleMessage(LocationManager.java:281) 在 android.location.LocationManager$ListenerTransport.access$000(LocationManager.java:210) 在 android.location.LocationManager$ListenerTransport$1.handleMessage(LocationManager.java:226) 在 android.os.Handler.dispatchMessage(Handler.java:102) 在 android.os.Looper.loop(Looper.java:145) 在 android.app.ActivityThread.main(ActivityThread.java:5942) 在 java.lang.reflect.Method.invoke(Method.java) 在 java.lang.reflect.Method.invoke(Method.java:372) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1399) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1194)

createLoginSession 我正在做的是:

public void createLoginSession(UserData userData) {
    Gson gson = new Gson();
    String info = gson.toJson(userData);
    editor.putString(INFO, info);
    editor.commit();
}

【问题讨论】:

  • 你在你的 gradle 中使用 proguard 吗?
  • @RoShanShan 是的,我正在使用

标签: java android exception exception-handling fatal-error


【解决方案1】:

你需要保留你的模型UserData,不要混淆它。像这样:

-keep class yourpackage.model.** { *; }

并保留你的 gson

-keep class com.google.gson.stream.** { *; }

【讨论】:

  • @KapilRajput 有帮助吗?如果是,请标记为答案
猜你喜欢
  • 2020-09-23
  • 1970-01-01
  • 2017-06-09
  • 2012-05-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多