记录几点使用studio常见的问题及解决方法,备日后参考
gradle project sync failed
原因
此问题是由于本地gradle版本和project使用的版本不一致,gradle更新不下来导致的。
解决方法
第一种
到C:\Documents and
Settings\Administrator.gradle\wrapper\dists下查看本地已下载的版本。找到project->gradle->wrapper下的gradle-wrapper.properties,更改为本地已下载的版本。
#Mon Apr 17 10:44:29 CST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
#更改gradle版本
distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
第二种
- 使用专业下载工具手动下载这个gradle版本如
https://services.gradle.org/distributions/gradle-2.14.1-all.zip
- 下载完成后将这个版本压缩包放到(不需要解压)C:\Documents and
Settings\Administrator.gradle\wrapper\dists\gradle-2.14-all\t7wfomcrmv8dmyii9c9waem8\
文件夹下,重启studio即完成更新。
Your project path contains non-ASCII characters
原因
你的项目工程路径包含中文
解决方法
第一种
更改你的项目工程路径,使其不包含中文。
第二种
配置你的根gradle.properties
文件
#-----------------------------------------------------------------------
# 设置项目路径支持中文
#-----------------------------------------------------------------------
com.android.build.gradle.overridePathCheck=true
包含非法字符:‘\ufeff’
原因
工程文件中包含有UTF-8+BOM编码的,在eclipse编译环境下会自动转换为普通的UTF-8格式文件,但studio下不会。
解决方法
使用编辑工具,如EditPlus来转换,用EditPlus打开java文件;然后点击Doument->File encoding->Convert encoding…,然后选择UTF-8即可。
找不到RecyclerView-v7支持包
首先打开sdk manager,找到已安装的support library 版本号
根据版本号,在build.gradle添加相关的依赖,重新编译
dependencies {
compile 'com.android.support:appcompat-v7:23.2.1'
...
}
找不到org.apche.http.*相关类
原因
在android6.0(API 23)之后,默认不提供这些类
解决办法
添加jar包 org.apache.http.legacy.jar,该jar包在android-sdk根目录\platforms\android-23\optional
可以找到
java.lang.UnsatisfiedLinkError: Couldn’t load from loader dralvik.system.PathClassLoade
原因
这个问题通常是由于找不到指定的.so文件引起的
解决方法
- 找到对应的.so文件,将其放在libs/armeabi/文件夹下
- 配置对应的build.gradle文件
sourceSets {
main {
java.srcDirs = ['src/main/java']
jniLibs.srcDirs = ['libs']
}
}
报错提示FloatMath.ceil()和FloatMath.sin()方法不存在
原因
android6.0(API 23)之后,不再支持这两个方法
解决方法
用Math类替换FloatMath类,Math.sin()和Math.ceil()
如果你想了解更多关于android studio下的gradle的使用,可直接戳这里: Android studio gradle简单解析及使用指南