我一直在寻找一段时间,并尝试了我能找到的每一个答案都没有成功。我开始相信问题出在android studio版本中。
然而,这就是我所做的:
1 - 我已经下载了facebook sdk
2 - 将sdk复制到我的libs文件夹中,以便项目看起来像 以下内容:
MyProj -app --libs ---facebook ----build.gradle (2) --build.gradle (1) -settings.gradle
3 - 我修改了settings.gradle:
include ':libs:facebook', ':app'
4 - 我将build.gradle(1)修改为:
apply plugin: 'android'
android {
compileSdkVersion 19
buildToolsVersion "19.0.3"
defaultConfig {
minSdkVersion 16
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'me.dm7.barcodescanner:zxing:1.0'
compile 'com.koushikdutta.ion:ion:1.2.4'
compile 'com.google.code.gson:gson:2.2.+'
compile 'com.squareup.picasso:picasso:2.1.1'
compile project(':libs:facebook');
}
5 - 最后编辑的build.gradle(2):
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.9.+'
}
}
apply plugin: 'android-library'
dependencies {
compile 'com.android.support:support-v4:+'
}
android {
compileSdkVersion 19
buildToolsVersion "19.0.3"
defaultConfig {
minSdkVersion 16
targetSdkVersion 19
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
res.srcDirs = ['res']
}
}
}
现在在同步时我收到恼人的警告: Gradle' MyApp'项目刷新失败: 配置名称'默认'找不到
我无法使用facebook库。
我想我对gradle文件做错了。有什么想法吗?
答案 0 :(得分:24)
在使用Android Studio 0.5.8的Mac上,这对我有用:
点击顶层项目并选择项目结构:
单击+添加另一个模块
点击“导入现有项目”和“下一步”
从SDK文件夹中选择facebook目录,然后单击“下一步”
现在除现有模块外,还应显示facebook模块
单击您的项目,选择Dependencies选项卡,然后单击'+'添加依赖项。
选择“模块依赖关系”作为依赖关系类型。
选择我们刚刚添加的Facebook模块
请注意,它显示在(您的应用程序的)依赖项下
你们都准备好了!
答案 1 :(得分:14)
项目的目录结构与您正在使用的依赖项规范不匹配;它不清楚你的 settings.gradle 中的内容。您收到的错误"配置名称'默认'找不到"非常不直观,但是当Gradle在某个目录中寻找模块并且找不到它时,它就会得到这些信息。如果你有一个依赖规范(和 settings.gradle include),如:libs:facebook
,它将在 MyProj / libs / facebook 中查找,而不是 MyProj / app / libs / facebook 你放置它的地方。
我会推荐这种结构:
MyProj
-app
--build.gradle (1)
-libs
--facebook
---build.gradle (2)
-settings.gradle
即。将 libs 目录向上移动一级,使其与 app 目录一起而不是在其下面。
您的 settings.gradle 文件应为:
include ':app', ':libs:facebook'
(这可能就是你已经设置的方式)并且对facebook的依赖应该如下:
compile project(':libs:facebook')
(也就像你已经设置的那样)
答案 2 :(得分:5)
按照此步骤将Facebook SDK添加到您的Android项目中。
1) Open your fresh Android project
2) Go to File -> Project Structure (or) Alt+Ctrl+Shift+S
3) Go to module click + on second row of window then import module
4) After Facebook SDK imported click + on third row and select Module Dependency select Facebook SDK Apply and press ok
答案 3 :(得分:0)
我从头开始制作了Facebook模块版https://github.com/cesarferreira/Facebook-Module
如果您想将此模块用于您的项目,您应该按照以下步骤操作:
那就是它!