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 提示找不到类
方法: 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相关的版本号得对应好,其他没什么~