【发布时间】:2018-10-21 00:12:09
【问题描述】:
更新 我添加到 proguard rules -keep class firebase,所以现在我可以获得 GCM 令牌。 但是 OneSignal 检测到我的应用仍然缺少 Android 支持库。 我之前有一个应用程序,我可以在其中构建一个签名的 apk 并使用 One Signal。 但是现在当我检查这个应用程序时,我体验到我能够使用 Build->Build APK(s) 将 minifyEnabled 设置为 false 来构建调试 apk,但是当我将 minifyEnabled 设置为 true 时,我得到了同样的错误项目也。 在我尝试添加 -keep class com.android.support. ** 和 -keep interface com.android.support. ** 但 One Signal 仍然检测到我的应用不包含支持库(无论如何支持库??)。
我在我的应用中实现了 One Signal。 如果我在 Android Studio 中通过“运行应用程序”启动应用程序,一切正常。 但是,如果我通过“Build->Build apk(s)”构建了一个 Apk,或者我生成了一个签名的 apk,那么在我安装它之后,一个 Signal 仪表板会显示“缺少 Android 支持库”。 我已经阅读了 One Signal 网站上的全天教程,但我无法解决这个问题。 我该如何解决?
我收到此错误
05-10 21:12:21.054 17990-18243/com.aff.index.main.debug E/OneSignal:获取 GCM 令牌的未知错误 java.lang.NoClassDefFoundError:解析失败:Lcom/google/android/gms/gcm/GoogleCloudMessaging; 在 com.onesignal.av.a(PushRegistratorGCM.java:41) 在 com.onesignal.at.a(PushRegistratorAbstractGoogle.java:97) 在 com.onesignal.at.a(PushRegistratorAbstractGoogle.java:37) 在 com.onesignal.at$1.run(PushRegistratorAbstractGoogle.java:84) 在 java.lang.Thread.run(Thread.java:762) 原因:java.lang.ClassNotFoundException:在路径上找不到类“com.google.android.gms.gcm.GoogleCloudMessaging”:DexPathList [[zip 文件“/system/framework/com.sec.android.app.multiwindow .jar", zip 文件 "/data/app/com.aff.index.main.debug-1/base.apk"],nativeLibraryDirectories=[/data/app/com.aff.index.main.debug-1/ lib/arm64, /data/app/com.aff.index.main.debug-1/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]] 在 dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:380) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:312) 在 com.onesignal.av.a(PushRegistratorGCM.java:41) 在 com.onesignal.at.a(PushRegistratorAbstractGoogle.java:97) 在 com.onesignal.at.a(PushRegistratorAbstractGoogle.java:37) 在 com.onesignal.at$1.run(PushRegistratorAbstractGoogle.java:84) 在 java.lang.Thread.run(Thread.java:762)
【问题讨论】:
-
同样的问题
-
我现在通过设置 minifyEnabled=false 和 multidexEnable=true 解决了(因为没有它,我无法构建我的应用,因为 65k 方法限制)。
-
@user3057944 显示你的 progurd-rules 和 gradle 文件
标签: android android-support-library onesignal