更新Facebook SDK添加依赖后出现Android Support库解析错误求助
嘿,我来帮你搞定这个头疼的依赖问题!你遇到的这些Failed to resolve错误,本质是Facebook Login SDK(你用的[4,5)版本区间)默认依赖了Android Support Library 27.0.2,但你的项目要么没配置正确的仓库源,要么编译版本没跟上,或者本地还没下载这个版本的库。下面是一步步的解决办法:
解决Facebook SDK更新后的依赖错误
1. 先对齐编译版本
Facebook的新版本SDK要求项目的compileSdkVersion至少匹配它依赖的Support库版本(这里是27)。打开你的build.gradle (Module: app),确保配置如下:
android { compileSdkVersion 27 defaultConfig { targetSdkVersion 27 // 其他项目配置... } }
2. 确保仓库源包含谷歌Maven
很多时候找不到Support库,是因为项目根目录的build.gradle里没加谷歌的Maven仓库。打开这个文件,在allprojects的repositories里补上:
allprojects { repositories { google() // 新版Gradle用这个就行,旧版本可以写成 maven { url 'https://maven.google.com' } jcenter() // 其他你需要的仓库... } }
3. 手动补全缺失的依赖(可选但有效)
如果上面两步做完还是报错,可以直接在app的build.gradle里手动添加这些缺失的Support库依赖,强制指定版本:
dependencies { // 你的Facebook Login SDK依赖 compile 'com.facebook.android:facebook-login:[4,5)' // 补上缺失的Support库 compile 'com.android.support:customtabs:27.0.2' compile 'com.android.support:appcompat-v7:27.0.2' compile 'com.android.support:support-v4:27.0.2' }
4. 清理重建项目
最后别忘了点击Android Studio顶部的Build -> Clean Project,然后Build -> Rebuild Project,让Gradle重新下载并同步所有依赖。
备选方案:用低版本的Facebook SDK
如果你不想升级项目的编译版本到27,也可以指定一个依赖更低版本Support库的Facebook SDK,比如4.28.0(它依赖的是26.0.1的Support库),把依赖改成:
compile 'com.facebook.android:facebook-login:4.28.0'
这样不用大改项目配置也能解决问题。
内容的提问来源于stack exchange,提问作者Akhtar Khan
相关产品推荐
相关产品推荐

