Android Studio从2升级到3 代码迁移需要的操作
Posted zy9011
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Studio从2升级到3 代码迁移需要的操作相关的知识,希望对你有一定的参考价值。
特么的运行着 然后发现死丢丢跑不起来了,是创建helloworld都出错的那种,果断换成新版本来弄一下。代码import是一片红,哈哈
module目录下的build.gradle
1.删除buildToolsVersion。android Studio3.0之后不需要再指定buildToolsVersion,每个版本的Android Gradle插件都有默认版本的构建工具,不删除只会报警告,但是这句指定构建版本的语句会被忽略
2.dependencies中 compile 替换为 implementation ,testCompile 替换为 testImplementation ,androidTestCompile 替换为 androidTestImplementation项目根目录下的build.gradle
1.buildscript和allprojects的repositories中添加google()
2.dependencies中的classpath中将gradle版本修改为对应版本项目根目录下的gradle/wrapper文件夹下的gradle-wrapper.properties文件
修改 distributionUrl 的地址`distributionUrl=https://services.gradle.org/distributions/gradle-4.4-all.zip
总算感觉好了,发现还是报错,因为使用了ButterKnife 8.8.1
Error:Unable to find method 'com.android.build.gradle.api.BaseVariant.getOutputs()Ljava/util/List;'.
本来是这样的使用:
buildscript
repositories
mavenCentral()
dependencies
classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.1'
and then apply it in your module:
apply plugin: 'com.android.library'
apply plugin: 'com.jakewharton.butterknife'
改成8.4.0就不会报错了:
classpath ‘com.neenbedankt.gradle.plugins:android-apt:1.8’
apply plugin: ‘android-apt’
compile ‘com.jakewharton:butterknife:8.4.0’
apt ‘com.jakewharton:butterknife-compiler:8.4.0’
特么新问题又来了
Error:Could not get unknown property ‘apkVariantData’ for object of type com.android.build.gradle.in
感觉像是gradle 版本影响了,然后我把build:gradle:3.1.1 改成2.3.2报错了,很生气啊,直接把AndResGuard 屏蔽看看,出现如下错误:
Error:android-apt plugin is incompatible with the Android Gradle plugin. Please use ‘annotationProcessor’ configuration instead
这个 我看懂了,就是把apt 用 annotationProcessor 替换,感觉还是Butterknife 的锅,最后干脆改回8.8.1,发现也是可以的,把AndResGuard改成最新版本发现也是适配了android studio 3.0 的
Android 8.0踩坑记录——Only fullscreen opaque activities can request orientation
解决办法:
1.找到你设置透明的Activity,然后在他的theme中将android:windowIsTranslucent改为false
false
2.再加入true
3.去掉activity中的orientation属性
以上是关于Android Studio从2升级到3 代码迁移需要的操作的主要内容,如果未能解决你的问题,请参考以下文章
Android官方开发文档之从Eclipse迁移到Android Studio开发篇