【问题标题】:Android Studio 0.8.1 - how to use Facebook SDK?Android Studio 0.8.1 - 如何使用 Facebook SDK?
【发布时间】:2014-06-28 12:41:48
【问题描述】:

我通过import module 尝试过,但我总是得到

Error:(13, 0) Could not find property 'ANDROID_BUILD_MIN_SDK_VERSION' on project ':facebook'.

我没有找到如何将 Facebook SDK 与最新的 Android Studio 一起使用的教程...

【问题讨论】:

标签: android-studio facebook-sdk-3.14.x


【解决方案1】:

在 Android Studio 1.1 预览版 2 中使用 Facebook SDK 3.23

两个选择:

*Facebook SDK 的 Maven 存储库。

dependencies {
    compile 'com.facebook.android:facebook-android-sdk:4.7.0'
}

检查latest version facebook sdk

*按照以下步骤操作:

1.下载facebook sdk https://developers.facebook.com/docs/android/

2.解压存档facebook-android-sdk-3.23.0

3.文件菜单->导入模块

4.在解压后的存档中选择“facebook”文件夹。

5.转到目录 facebook/build.gradle 更改这部分

这个:

 compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)
    buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION

    defaultConfig {
        minSdkVersion Integer.parseInt(project.ANDROID_BUILD_MIN_SDK_VERSION)
        targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION)
    }

到正确的 sdk 版本

示例:

 compileSdkVersion 21
        buildToolsVersion '21.1.1'

        defaultConfig {
            minSdkVersion 14
            targetSdkVersion 21
        }

6.单击您的项目并按 F4,转到“依赖项”选项卡,单击“+”,“模块依赖项”并选择您导入的 facebook 模块。

7.重新同步和重建

【讨论】:

  • 这对我有用,谢谢!但是,在此之后我得到了构建错误,然后通过将 'libs/bolts.jar' 替换为 'libs/bolts-android-1.1.2.jar' 来解决,这是 bolts lib 的确切文件名。
  • @EricFan 没错,因为 facebook sdk 更新到版本 3.17.2,他们将 bolts.jar 重命名为 bolts-android-1.1.2.jar
  • 在 AS 0.8.9 上为我工作,更新一些字段只是为了警告
  • 对于仍然想知道的人,Facebook SDK 终于有了一个官方的 Maven 存储库:dependencies { compile 'com.facebook.android:facebook-android-sdk:3.20.0' }
  • 这个解决方案对我有用(我只需要微调目标 SDK 版本和最低 SDK 版本),它应该是公认的答案。
【解决方案2】:

对于仍然想知道的人,Facebook SDK 终于有了一个官方 Maven 存储库:

dependencies {
    compile 'com.facebook.android:facebook-android-sdk:3.20.0'
}

【讨论】:

    【解决方案3】:

    将所有这些变量值写入 "gradle.properties" 文件。

    喜欢

    ANDROID_BUILD_TARGET_SDK_VERSION=19
    ANDROID_BUILD_TOOLS_VERSION=19.1.0
    ANDROID_BUILD_SDK_VERSION=19
    ANDROID_BUILD_MIN_SDK_VERSION=14
    

    你可以关注这个帖子https://stackoverflow.com/a/20221453/1232520

    【讨论】:

    • 这是最好的方法。没有重复。谢谢
    【解决方案4】:

    将这些行添加到你的 gradle.properties 它对我有用!

    ANDROID_BUILD_TARGET_SDK_VERSION=19
    ANDROID_BUILD_TOOLS_VERSION=19.1.0
    ANDROID_BUILD_SDK_VERSION=19
    ANDROID_BUILD_MIN_SDK_VERSION=14

    完成此操作后,请按照本文https://stackoverflow.com/a/24457464/3296641中的步骤描述

    【讨论】:

      【解决方案5】:

      现在你可以使用来自 maven 的 3.21.1 版本

      https://developers.facebook.com/docs/android/

      dependencies {
             compile 'com.facebook.android:facebook-android-sdk:3.21.1'
      }
      

      【讨论】:

        【解决方案6】:

        您现在可以通过 gradle 获取 Facebook SDK:

        compile 'com.facebook.android:facebook-android-sdk:3.20.0'
        

        【讨论】:

          【解决方案7】:

          只需转到项目结构并选择依赖项

          然后单击右上角的 + 并选择库依赖项(第一个选项),然后键入 facebook,或者如果您需要任何其他库,然后单击搜索图标(确保您有互联网连接)并选择 com.facebook。 android:facebook-android-sdk:.... 你很高兴

          【讨论】:

            【解决方案8】:

            说明:

            可以在您的项目 gradle.properties 中定义以下常量:

            ANDROID_BUILD_MIN_SDK_VERSION=15
            ANDROID_BUILD_TARGET_SDK_VERSION=21
            ANDROID_BUILD_TOOLS_VERSION=21.1.2
            ANDROID_BUILD_SDK_VERSION=21
            

            这些在 Facebook sdk 中用作构建 gradle 设置。指定你使用的sdk。 (鼓励这些值与您的项目值相匹配!)。

            “代码可重用性和依赖性!”您可以在项目的所有 build.gradle 文件和项目中的所有其他模块中使用这些相同的值作为 gradle 构建设置。使用它们的方式与在 Facebook build.gradle 文件中使用的方式相同。

            示例优势:更改 gradle.properties 上的最低 sdk 版本将自动为您的所有模块 build.gradle 更改它。

            【讨论】:

            • 给出专业的答案。但是为什么这个声明不影响 - compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)?
            • 从那时起我就没有在 Android 上工作过。我忘了。但我记得我问过自己同样的问题,我不确定我是否找到了解释。
            • 我认为它受到了影响。但你不能在所有文件中使用它。 Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION) 无法在某些文件中编译。
            【解决方案9】:

            你可以摆脱

            "Error:(13, 0) Could not find property 'ANDROID_BUILD_MIN_SDK_VERSION'"
            

            通过替换下面的所有值 查看您的 build.gradle 。您可以找到您的应用程序正在使用的所有属性和版本。将 facebook sdk 中的“buld.gradle 文件”的值替换为相同的版本。

             android {
                compileSdkVersion 19 
                buildToolsVersion "20.0.0"
            
                defaultConfig {
                     minSdkVersion 8
                    targetSdkVersion 19
                 }
            

            对于 BOLT.JAR 错误,facebook sdk build.gradle 文件中存在依赖关系,例如 compile "files('../libs/bolts.jar')" 这实际上是针对我们下载的整个 sdk 文件夹,但由于我们只使用 facebook 文件夹,所以我们要遵循的目录路径少了一个。 因此,您可以在 /libs 之前获得一个周期,因此只需将其删除并将其保留为编译文件('./libs/bolts.jar')

            你很高兴!

            【讨论】:

              【解决方案10】:

              build.gradle 文件中使用最新版本的 Facebook SDK 添加编译依赖

               dependencies { 
                    compile 'com.facebook.android:facebook-android-sdk:4.14.0'
                  }
              

              欲了解更多信息https://developers.facebook.com/docs/android/getting-started

              【讨论】:

                【解决方案11】:

                对于不知道把gradle.properties放在哪里的人,应该放到项目的根目录下。这就是它在我的一个项目中的样子。

                【讨论】:

                  【解决方案12】:

                  我最近遇到了一个尚未在此处解决的错误。我尝试使用来自 maven 的最新 Facebook SDK(通过声明 compile 'com.facebook.android:facebook-android-sdk:4.6.0')。 gradle build 后没有报错,在声明和编写 FacebookSdk 相关代码时,Android Studio 的静态代码分析也正常。但是,当我尝试在模拟器中运行代码时,我收到一个错误,即项目中不包含 facebook sdk。然后我尝试了其他一些技巧,最后我从 gradle 构建文件中删除了 facebook 条目并尝试将其作为模块导入,但这也没有用。

                  过了一会儿,当我阅​​读 Facebook gradle 文件时,我意识到他们正在编译带有“sourceCompatibility JavaVersion.VERSION_1_7”标志的代码。我使用了 VERSION_1_8 标志,因为我想通过 retrolambda 库来使用 lambda。在我切换到 1.7(并且还调整了 File -> Project structure -> Source Compatibility 中的设置)后,它开始工作并且没有问题。

                  我完全不明白为什么(以及是否)这会相互关联,但可能要注意这一点。

                  【讨论】:

                    猜你喜欢
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    • 2015-08-09
                    • 2014-09-14
                    • 1970-01-01
                    • 1970-01-01
                    • 1970-01-01
                    相关资源
                    最近更新 更多