使用Android studio导入别人的项目时,经常会出现一些问题,其中多半问题是版本号不匹配造成的,一般修改编译配置文件build.gradle就可以解决,以下列出了一些常见的问题及解决办法。
问题1:
错误信息: Error:failed to find Build Tools revision 21.0.0
Install Build Tools 21.0.0 and sync project
找不到编译工具, 这是最常见的问题,解决办法:
修改对应module下的build.gradle文件中
buildToolsVersion "23.0.2"
的版本号为你电脑里装有的版本,相应地把ompileSdkVersion 23
也改成对应的版本。
问题2
错误信息: Error: Could not find property
'ANDROID_BUILD_TARGET_SDK_VERSION' on project ':app'.
解决办法:同样在build.gradle文件中找到:
defaultConfig {
applicationId "com.jumtop.myapplications"
minSdkVersion 14
targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION)
versionCode 1
versionName "1.0"
}
把targetSdkVersion后面的Integer.parseInt(…)改成具体数字就行了,同样,如果minSdkVersion,versionCode,versionName的版本号如果不是具体数字的化也都统统改成具体数字。
问题3
具体报什么错忘了, 总之是support包版本号不对
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
}
把com.android.support:xxx:后面的版本号改成你sdk中已装有的版本号,如果不知道该怎么改的话,随便新建一个Project, 然后参照其中的build.gradle文件修改。
问题4
错误信息:Error:Gradle DSL method not found: ‘runProguard()’
这个问题比较少见, 具体解决办法是把runProguard改成minifyEnabled
buildTypes {
release {
//runProguard false
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
问题5
编译时卡在refreshing ‘projectName’ gradle project界面
这个问题十分蛋疼,只要卡在这个界面程序就动不了了,只能强制关闭,一般出现在导入别人项目或者Android studio版本更新后的时候,最后的解决办法是找到project下的build.gradle文件:
dependencies {
classpath 'com.android.tools.build:gradle:1.5.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
把其中的gradle版本号改成你自己的版本号。
其他
如果导入的项目中有一些在线依赖的library, 而你的网速又不给力,可以先把这些依赖先注释掉,然后手动去网上下载相应的jar包或者aar导入。