2015-04-26 117 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