2015-04-26 78 views
0

我在Android中设置了一个新项目来测试Facebook(它们的方式过于复杂的SDK),无论如何,我遇到以下问题。Facebook SDK 4.0.0无法通过gradle编译

我的项目编译良好,并在我的设备上工作,没有包含Facebook SDK,但是当用官方指令添加sdk时,它无法编译。

我正在使用java版本“1.8.0_05”。

的gradle这个设置是:

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:support-v4:22.1.1' 
    compile('com.google.android.gms:play-services:7.0.0') { 
     exclude module: 'support-v4' 
    } 
    compile('com.facebook.android:facebook-android-sdk:4.0.1') { 
     exclude module: 'support-v4' 
    } 
} 

错误消息:

Error:Execution failed for task ':android:dexDebug'. 
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents/Home/bin/java'' finished with non-zero exit value 2 

回答

0

原来的Facebook广告的哪些方法整个负载,如果你的网站包括Facebook SDK和谷歌播放服务,你打的方法对于Android的限制(64k ..)

所以要解决这个问题,只需将其添加到Gradle:

compile 'com.android.support:multidex:1.0.0' 

然后在你的Android gradle.build

buildTypes { 
     debug { 
      minifyEnabled false 
      multiDexEnabled true 
     } 
     //And others 
} 

如果仍然有问题(尽管上述工作对我来说),您可以尝试添加:

class MyAndroidApplication extends MultiDexApplication