4

导入 Facebook SDK 时,我一直在 HelloFacebookSample 上遇到相同的错误。

错误:(8, 0) 在项目“:HelloFacebookSample”上找不到属性“ANDROID_BUILD_SDK_VERSION”。

我知道错误与 HelloFacebookSample 有关,并且我尝试分配“ANDROID_BUILD_SDK_VERSION”= 20(我的 SDK 版本)。它仍然会出现相同的错误。

这是一个快照

在此处输入图像描述

这个错误正在吸走我的生命。我怎样才能摆脱这个错误?

4

3 回答 3

6

Facebook 的“build.gradle”文件假定您有一个“gradle.properties”文件,其中声明了 ANDROID_BUILD_SDK_VERSION 变量。因此,您所要做的就是在根级别创建一个名为“gradle.properties”的文件并将以下内容添加到其中。

ANDROID_BUILD_TARGET_SDK_VERSION=19 ANDROID_BUILD_TOOLS_VERSION=10.0.0 ANDROID_BUILD_SDK_VERSION=19 ANDROID_BUILD_MIN_SDK_VERSION=11

于 2014-12-23T13:56:49.107 回答
1

您有此错误是因为您没有将'ANDROID_BUILD_SDK_VERSION' 替换为 20 in HelloFacebookSample/build.gradle,而不是 in Facebook/build.gradle

于 2014-12-23T09:27:09.230 回答
1

看到上面的答案现在可能已经过时了,我发布了这个更新的解决方案。我花了两个小时在它上面,终于让它工作了。

我正在使用带有 Facebook SDK 4.0 的 Android Studios 1.1。

  1. 在您打开 Android Studios 之前,转到 \facebook-android-sdk-4.0.1\facebook\build.gradle 并替换任务 javadoc(type: Javadoc):

    source = android.sourceSets.main.java.srcDirs
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
    

有了这个:

task androidJavadocs(type: Javadoc) {
source = android.sourceSets.main.java.srcDirs
ext.androidJar = "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar"
classpath += files(ext.androidJar)
}

以上来自在调用 setTargetInfo() 之前无法调用 getBootClasspath()由:Mansukh Ahir

  1. 现在导航到您 PC 上 Facebook SDK 文件夹的根目录:\facebook-android-sdk-4.0.1 并创建一个 gradle.properties 文件并在其中说明或根据您已有的 SDK 版本对其进行自定义个人电脑:
ANDROID_BUILD_MIN_SDK_VERSION=15
ANDROID_BUILD_TARGET_SDK_VERSION=21
ANDROID_BUILD_TOOLS_VERSION=21.1.2
ANDROID_BUILD_SDK_VERSION=21
  1. 现在转到 Android Studios 并将您的示例文件夹导入 Android Studios \facebook-android-sdk-4.0.1\samples

Android Studios 现在应该导入所有内容。在导入过程中您仍然会遇到一些错误,因为某些示例(例如 MessengerSendSample)具有指向最低 SDK 版本 14 的 build.gradle 文件,而不是 gradle.properties 文件中定义的 15。只需打开 MessengerSendSample build.gradle 并更改为 15 即可。

于 2015-04-29T19:05:20.617 回答