项目从eclipse移植到studio中遇到的问题整理

概念

eclipseworkspace--->studioproject

eclipseproject--->studiomodule

step1:

eclipse导出

export-->Android-->GenerateGradleBuildfiles

-->next-->next-->勾选项目next-->forceoverridingofexistingfiles-->finish

step2:

studio导入项目

File-->New-->ImportProject-->选择目录,选择buildgradle文件.

遇到的问题

gradle版本号相关

gradle文件夹-->wrapper-->gradle-wrapper.properties文件内

distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip

版本号要跟本地gradle文件版本号对应

build.gradle文件内   
dependencies {
        classpath 'com.android.tools.build:gradle:2.1.2'
    }
  版本号也要跟本地gradle版本号对应<感觉是大于等于的关系即可>

代码报错相关

问题:httpclient提示找不到类<android6.0不支持这个了>

方法: build.gradle文件内 
dependencies {
    android {
        useLibrary 'org.apache.http.legacy'
    }
}

红色字体就是引入httpclient相关的lib工程

问题:AndroidStudio非法字符:\65279

方法:

step1.FileEncoding-->GBK-->Convert;

step2.FileEncoding-->UTF-8-->Convert;

原理大概是eclipse的是utf-8bom格式,需要在studio先转成gbk,再转成utf-8.

问题:android.util.FloatMath找不到符号

方法:FloatMath换成Math

原理这个类已经过时了

其他问题暂未发现

==================================================================================

引入so文件

还是build.gradle文件内,

添加

task nativeLibsToJar(type: Zip, description: 'create a jar archive of the native libs') {
    destinationDir file('$buildDir/native-libs')//打包的目标目录
    baseName 'native-libs'//jar的文件名
    extension 'jar'
    from fileTree(dir: 'libs', include: '**/*.so')
    into 'lib/'
}

//Gradle低版本用Complie,高版本用JavaCompile
tasks.withType(JavaCompile) {
    compileTask -> compileTask.dependsOn(nativeLibsToJar)
}
dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')

 compile fileTree(dir: '$buildDir/native-libs', include: 'native-libs.jar')
    android {
        useLibrary 'org.apache.http.legacy'
    }
}

==================================================================================

想引入jar包,正常complie后,发现总是提示'Failedtoresolve:xxxxx'

检测路径没问题,网上搜了下,一哥们eclipse转studio的时候遇到相同的问题,

托他的福,解决了问题

build.gradle文件里加上

allprojects {
    repositories {
        jcenter()
    }
}
 

fixed!

这边eclipse版本号Mars.2Release(4.5.2)

studio版本号2.1.2

java版本号1.7

个人感觉,gradle相关的版本号得对应好,其他没什么~

相关推荐