105

私はAndroid Studio を使用して Facebook SDK for Androidに従っています。アプリケーションを実行すると、以下の警告が表示されます。

Gradle: module 'facebook' won't be compiled. Unfortunately you can't have non-Gradle Java module and Android-Gradle module in one project.

これをどのように解決すればよいですか?

@Scott Barta の回答を試したところ、次のエラー メッセージが表示されました。

    A problem occurred configuring project ':App'.
> Failed to notify project evaluation listener.
   > A problem occurred configuring project ':libraries:facebook'.
      > Failed to notify project evaluation listener.
         > Could not resolve all dependencies for configuration ':libraries:facebook:_DebugCompile'.
            > Could not find any version that matches com.android.support:support-v4:+.
              Required by:
                  MyApplication2.libraries:facebook:unspecified
4

12 に答える 12

12

Scott Barta のソリューションは私にとってはうまくいきましたが、これらをメイン プロジェクトの build.gradle ファイルの依存関係に追加する必要がありました。

compile files('libs/android-support-v4.jar')
compile project(':libraries:facebook')

また、言及する価値があるのは、次のことを確認する必要があることです。

android {
    compileSdkVersion 18
    buildToolsVersion "18.1.1"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 18
    }

両方のbuild.gradleファイルで同じです...これを行うと、魅力的に実行されました。

于 2013-12-03T15:37:26.227 に答える
6

git を使用すると、最新の facebook-android-sdk を簡単に組み込むことができます。

  • facebook-android-sdk をサブモジュールとして追加します。git submodule add https://github.com/facebook/facebook-android-sdk.git
  • gradle プロジェクトとして sdk を追加します。settings.gradle を編集して次の行を追加します。 include ':facebook-android-sdk:facebook'
  • モジュールへの依存関係として sdk を追加します。build.gradle を編集し、依存関係ブロック内に追加します。compile project(':facebook-android-sdk:facebook')
于 2014-04-28T10:14:18.103 に答える
2

私は修正しました

「プロジェクト ':facebook' でプロパティ 'ANDROID_BUILD_SDK_VERSION' が見つかりませんでした。」

次の値build.gradleを追加することにより、ファイルにエラーが発生します。gradle.properties

ANDROID_BUILD_TARGET_SDK_VERSION=21<br>
ANDROID_BUILD_MIN_SDK_VERSION=15<br>
ANDROID_BUILD_TOOLS_VERSION=21.1.2<br>
ANDROID_BUILD_SDK_VERSION=21<br>

ソース: https://stackoverflow.com/a/21490651/2161698

于 2015-01-12T19:03:30.607 に答える
2

Android Studio 0.8.6 を使用している場合は、次のことができます。

  1. Facebook-android-sdk-xxx.zip をダウンロードして解凍します
  2. Facebook-android-sdk-xxx ディレクトリの下にある Facebookディレクトリのみを app/ とともにプロジェクトにコピーします。

    • ImAnApp/
      • |-- アプリ/
      • |-- ビルド/
      • |-- フェイスブック/
  3. これで、Facebook をモジュールとして表示する Android Studio が表示されます。

  4. facebook の build.gradle をこれに変更します。
    • 提供されたファイル ('../libs/bolts.jar') にprovided files('./libs/bolts.jar')
    • compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION)compileSdkVersion 20またはアプリで定義した他のバージョン
    • buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION へbuildToolsVersion '20.0.0'
    • minSdkVersion Integer.parseInt(project.ANDROID_BUILD_MIN_SDK_VERSION) へminSdkVersion 14
    • targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION) へtargetSdkVersion 20

    apply plugin: 'android-library'

    dependencies {
        compile 'com.android.support:support-v4:19.1.+'
        provided files('./libs/bolts.jar')
    }

    android {
        compileSdkVersion 20
        buildToolsVersion '20.0.0'

        defaultConfig {
            minSdkVersion 14
            targetSdkVersion 20
        }

        lintOptions {
            abortOnError false
        }

        sourceSets {
            main {
                manifest.srcFile 'AndroidManifest.xml'
                java.srcDirs = ['src']
                res.srcDirs = ['res']
            }
        }
    }

Gradle ファイルを再同期すると、問題なく動作するはずです。

于 2014-08-21T06:16:17.250 に答える
1

*Facebook SDK の Gradle リポジトリ。

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

最新バージョンの facebook SDK を検索する

于 2015-02-25T07:18:11.330 に答える
1

facebook SDK プロジェクトで build.gradle ファイルを作成します。

apply plugin: 'android-library'

dependencies {
    compile 'com.android.support:support-v4:18.0.+'
}

android {
    compileSdkVersion 8
    buildToolsVersion "19.0.0"

    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        // Move the build types to build-types/<type>
        // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
        // This moves them out of them default location under src/<type>/... which would
        // conflict with src/ being used by the main source set.
        // Adding new build types or product flavors should be accompanied
        // by a similar customization.
        debug.setRoot('build-types/debug')
        release.setRoot('build-types/release')
    }
}

include ':libs:facebook'次に、 equals <project_directory>/libs/facebook(ライブラリへのパス) を に追加しsettings.gradleます。

于 2013-11-13T18:51:38.400 に答える