城市飞艇&x2B;Facebook cordova插件android-support-v4冲突

城市飞艇&x2B;Facebook cordova插件android-support-v4冲突,android,cordova,urbanairship.com,dex,phonegap-facebook-plugin,Android,Cordova,Urbanairship.com,Dex,Phonegap Facebook Plugin,我尝试使用城市飞艇cordova插件()和Facebook插件(),但我遇到了这个错误: 多个索引文件定义Landroid/support/annotation/AnimRes 这似乎是由于facebook android-support-v4和phonegap ua push之间的冲突,因为它使用不同的support-v4版本编译 dependencies { compile 'com.android.support:cardview-v7:22.2.0' compile 'com.and

我尝试使用城市飞艇cordova插件()和Facebook插件(),但我遇到了这个错误:

多个索引文件定义Landroid/support/annotation/AnimRes

这似乎是由于facebook android-support-v4和phonegap ua push之间的冲突,因为它使用不同的support-v4版本编译

dependencies {
 compile 'com.android.support:cardview-v7:22.2.0'
 compile 'com.android.support:support-v4:22.2.0'
 compile 'com.google.android.gms:play-services-location:7.5.0'
 compile 'com.google.android.gms:play-services-gcm:7.5.0'
 compile 'com.urbanairship.android:urbanairship-sdk:6.1.3'
}
我试图更新phonegap ua推送的依赖项,并排除它所依赖的support-v4,希望它能够与Facebook推送一起工作。 我是这样做的:

dependencies {
  compile ('com.android.support:cardview-v7:22.2.0') {       
    exclude module: 'support-v4'
  }
  compile ('com.google.android.gms:play-services-location:7.5.0') {       
    exclude module: 'support-v4'
  }
  compile ('com.google.android.gms:play-services-gcm:7.5.0') {       
    exclude module: 'support-v4'
  }
  compile ('com.urbanairship.android:urbanairship-sdk:6.1.3') {       
    exclude module: 'support-v4'
  }
}
但当应用程序收到推送通知时,应用程序会崩溃。。 以下是logcat的例外情况:

E/AndroidRuntime(24095):java.lang.NoSuchMethodError:没有虚拟方法setColor(I)Landroid/support/v4/app/NotificationCompat$Builder;类内Landroid/support/v4/app/NotificationCompat$Builder;或其超类(声明'android.support.v4.app.NotificationCompat$Builder'出现在/data/app/com.******-1/base.apk中)

是否有人同时使用facebook和urbanairship插件,以及如何实现

编辑: 正如ralepinski所说,我试图从platforms/android/FacebookLib/libs/文件夹中删除android-support-v4.jar,当我这样做时,我得到以下错误提示:

FacebookLib/src/com/facebook/AppEventsLogger.java:24:error:package android.support.v4.content不存在导入 android.support.v4.content.LocalBroadcastManager

我觉得很难告诉我他找不到android-support-v4

这对我来说没有意义,因为FacebookLib的build.gradle如下所示:

dependencies {
    compile 'com.android.support:support-v4:[20,21)'
    compile 'com.parse.bolts:bolts-android:1.1.2'
}
因此,我们应该能够理解android-support-v4是必要的。我可能不明白这里有什么

我还尝试用phonegap ua push使用的android-support-v4替换android-support-v4-22.2.0,但似乎缺少了一些符号:

错误:找不到符号 FragmentManagerImpl MFFragmentManager

错误:找不到符号 FragmentManagerImpl mChildFragmentManager


您使用的Facebook插件附带了一个过时版本的支持库。我会向他们提出一个问题。看起来他们可能正在使用gradle,所以他们只需要删除支持库


因为看起来你必须克隆Facebook插件,你可以尝试从插件中删除支持库,看看这是否对你有用。如果没有,请尝试使用更新版本更新支持库,并保留你的gradle排除。

我终于解决了我的问题,使用了Facebook插件的这个分支,它使用了最新的Facebook sdk。

感谢@ralepinski的回答,不幸的是,它对我不起作用。我已经编辑了我的问题。你能让这两个插件一起工作吗?