Home

smartbeng

做好今天的自己!

Blog About Email Github

2017-03-31
Android Studio 中配置 Java 8 属性

今天竟然有人问我什么是 Lamdba 表达式?不知道的赶紧下去了解 , 这是 Java 8 中的新特性 , 可以极大程度的简化代码 , 并且可读性很高 , 如今 Java 9 都要问世了 , 希望大家都跟上技术发展步伐 , 今天先在这里给不会的同学总结一下关于 Android Studio 中如何配置使用 Java 8 , 过后再记录一下学习 Lamdba 表达式的心得。

添加插件retrolambda

apply plugin: 'me.tatarka.retrolambda'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'me.tatarka:gradle-retrolambda:3.2.4' //for java 8 lamda
}
}
dependencies {
//从 maven central 获取最新版本插件
retrolambdaConfig 'net.orfjackal.retrolambda:retrolambda:+'
//本地版本,retrolambda.jar 位于libs目录
// retrolambdaConfig files('libs/retrolambda.jar')
}

配置android{}区块Java版本

//java版本8
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}

配置proguard.pro混淆文件

## see https://github.com/evant/gradle-retrolambda for java 8
-dontwarn java.lang.invoke.*

配置完成之后的build.gradle文件

apply plugin: 'com.android.application'
apply plugin: 'me.tatarka.retrolambda'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'me.tatarka:gradle-retrolambda:3.2.4' //for java 8 lamda
}
}
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.mrljdx.sample"
minSdkVersion 10
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
//java版本8
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
.....//省略其他配置
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
//java 8 配置
retrolambdaConfig 'net.orfjackal.retrolambda:retrolambda:+'
}

至此 , 你的Android 就可以使用 Java 8 的功能了!

微信公众号「smartbeng」,吐血版珍藏持续更新,一个会爱上的公众号。

webwxgetmsgimg.jpg


smartbeng

scribble

Blog About Email Github