----------------------------------------------------------------------- 方法一 ------------------------------------------------------------
一、迁移src
直接拷贝eclipse中src/com到AS中的src/main/java中。
二、迁移AndroidManifest.xml
直接复制eclipse的AndroidManifest.xml到AS的src/main目录中。
三、迁移图片等文件。
直接将eclipse的图片、风格文件复制到AS的src/main/res目录中。
四、复制*.jar
将eclipse的libs目录中的文件复制到AS的libs目录下。
五、复制*.so
将eclipse的libs/armeabi目录复制到AS的src/main/jniLibs目录下,若没有,则创建。
六、混淆文件添加
在build.gradle中进行配置
android {
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'),'some-other-rules.txt'
//proguardFile 'some-other-rules.txt' 配置单个文件这样
}
}
}
如上面代码所示,我们可以使用minifyEnabled true开启,并且对其配置混淆配置,可以配置多个文件或单个文件。
android的sdk中已经为我们提供了两个默认的配置文件,我们可以拿过来进行使用,proguard-android.txt和proguard-android-optimize.txt。
七、添加assets
/src/main/assets
错误:
1、Error:Execution failed for task ':equipmenttesting:transformClassesWithDexForDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/opt/jdk1.8.0_65/bin/java'' finished with non-zero exit value 1
解决:检查引用的包是否重复了。
----------------------------------------------------------------------- 方法二 ------------------------------------------------------------
将如下build.gradle拷贝到eclipse目录下,用android studio打开build.gradle ,加载完毕即可,过程中可能出现gradle不匹配,只要按需求更新下就好。
repositories { jcenter() flatDir { dirs 'libs' } } //添加以下代码,使classes-full-debug.jar包编译先于android.jar gradle.projectsEvaluated { tasks.withType(JavaCompile) { options.compilerArgs.add('-Xbootclasspath/p:libs/framework.jar') } } buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:2.3.0' } } apply plugin: 'com.android.application' dependencies { compile fileTree(include: '*.jar', dir: 'libs') compile 'com.android.support:appcompat-v7:23.1.0' provided files('libs/framework.jar') compile 'com.google.code.gson:gson:2.7' compile 'com.android.support:multidex:1.+' compile 'uk.co.chrisjenx:calligraphy:2.2.0' compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5' compile 'com.jakewharton:butterknife:5.1.1' compile project(':chargerlib') } android { compileSdkVersion 23 buildToolsVersion '25.0.0' useLibrary 'org.apache.http.legacy' defaultConfig { minSdkVersion 16 targetSdkVersion 20 multiDexEnabled true } dexOptions { javaMaxHeapSize "4g" } //证书信息在这里配置 signingConfigs { main { storeFile file("./platform.jks") storePassword "atsmart123" keyAlias "atsmart" keyPassword "atsmart123" } }
lintOptions {
//表示不进行lint检测 checkReleaseBuilds false //表示检测出错不退出
abortOnError false } //编译类型 buildTypes { // 发布版 release { // minifyEnabled false // proguardFiles getDefaultProguardFile('proguard-project.txt'), 'proguard-rules.pro' signingConfig signingConfigs.main } //工程版 debug { minifyEnabled false // proguardFiles getDefaultProguardFile('proguard-project.txt'), 'proguard-rules.pro' signingConfig signingConfigs.main // manifestPlaceholders = [myid:"android.uid.system"] } } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] jniLibs.srcDirs = ['libs'] } // Move the tests to tests/java, tests/res, etc... instrumentTest.setRoot('tests') // Move the build types to build-types/<type> // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ... // This moves them out of them default location under src/<type>/... which would // conflict with src/ being used by the main source set. // Adding new build types or product flavors should be accompanied // by a similar customization. debug.setRoot('build-types/debug') release.setRoot('build-types/release') } }