android studio 常见问题汇总

记录几点使用studio常见的问题及解决方法,备日后参考

gradle project sync failed

原因

此问题是由于本地gradle版本和project使用的版本不一致,gradle更新不下来导致的。

解决方法

第一种

  1. 到C:\Documents and
    Settings\Administrator.gradle\wrapper\dists下查看本地已下载的版本。

  2. 找到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

第二种

  1. 使用专业下载工具手动下载这个gradle版本如https://services.gradle.org/distributions/gradle-2.14.1-all.zip
  2. 下载完成后将这个版本压缩包放到(不需要解压)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支持包

  1. 首先打开sdk manager,找到已安装的support library 版本号
    android studio 常见问题汇总_第1张图片

  2. 根据版本号,在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文件引起的

解决方法

  1. 找到对应的.so文件,将其放在libs/armeabi/文件夹下
  2. 配置对应的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简单解析及使用指南

你可能感兴趣的:(android)