我有一个Cordova Android项目,我添加了Google Firebase Cloud Messaging Cordova Push Plugin
我在MyFirebaseMessagingService.java文件中收到以下错误。
The hierarchy of the type MyFirebaseMessagingService is inconsistent
和
The type com.google.firebase.iid.zzb cannot be resolved. It is indirectly referenced from required .class files
我的类路径文件。
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="gen"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
<classpathentry exported="true" kind="lib" path="Downloads/google-play-services.jar/google-play-services.jar"/>
<classpathentry exported="true" kind="lib" path="Downloads/google-firebase-iid.jar"/>
<classpathentry exported="true" kind="lib" path="Downloads/firebase-messaging-9.2.0.jar"/>
<classpathentry exported="true" kind="lib" path="Downloads/android-support-v4.jar (2)/android-support-v4.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>
我尝试过删除和添加不同jar文件的各种组合,但没有运气。
在添加此插件之前是否还有其他人遇到此错误?
感谢您的帮助。如果需要,我可以发布更多代码或截图。
答案 0 :(得分:0)
猜测:你错过了像firebase的JAR这样的东西 - 核心
有关详细信息,请参阅documentation!
重点是:有时您的JAR文件依赖于其他JAR文件;并且该错误消息只是告诉您遇到了这样的问题。然后你必须开始寻找在哪里获得&#34;缺失&#34;一部分。
所有这一切都应该很好地插入到Android studio / gradle构建环境中;有关详细信息,请参阅here。
答案 1 :(得分:0)
您错过了项目中使用过的jar文件的某些功能或方法。 创建一个单独的库项目,在其中添加下面链接中提到的所有必需的jar: -
https://github.com/dandar3/android-google-firebase-messaging
现在将此库项目添加到您退出项目中,将解决您的问题。
下面的注释是您必须包含在库项目中的jar文件: -
1)dandar3 /谷歌Android-火力共用 2)dandar3 /谷歌Android-火力-IID 3)dandar3 /谷歌Android播放服务地下室 4)https://github.com/dandar3/android-google-play-services-tasks/blob/11.2.0/libs/google-play-services-tasks.jar 5)google-firebase-messaging.jar