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

概念

eclipse workspace --->  studio project
eclipse project   --->  studio module

step1:

eclipse导出

export --> Android  --> Generate Gradle Build files 
-->next-->next-->勾选项目 next-->force overriding of existing files-->finish

step2:

studio导入项目

File-->New-->Import Project-->选择目录,选择build gradle文件.

遇到的问题


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 提示找不到类 <android 6.0不支持这个了>
方法: build.gradle文件内 
dependencies {
    android {
        useLibrary 'org.apache.http.legacy'
    }
}

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


问题:Android Studio 非法字符: \65279
方法:
step1.File Encoding -->GBK -->Convert;
step2.File Encoding -->UTF-8 -->Convert;
原理大概是eclipse的是utf-8 bom 格式,需要在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后,发现总是提示'Failed to resolve: xxxxx'

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

build.gradle文件里加上
allprojects {
    repositories {
        jcenter()
    }
}
 
fixed!

这边eclipse版本号 Mars.2 Release (4.5.2)
studio 版本号 2.1.2
java   版本号  1.7

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

猜你喜欢

转载自hellorheaven.iteye.com/blog/2324219
今日推荐