一:只需要支持Lambda表达式

在app/build.gradle下添加

android {    //设置JDK1.8    compileOptions {            sourceCompatibility JavaVersion.VERSION_1_8            targetCompatibility JavaVersion.VERSION_1_8        }}buildscript {    repositories {        mavenCentral()    }    dependencies {        classpath 'me.tatarka:gradle-retrolambda:3.2.5'    }}repositories {    mavenCentral()}//添加插件apply plugin: 'me.tatarka.retrolambda'

然后就可以使用Lambda表达式了,比如

new Thread(new Runnable() {    public void run() {      System.out.println("Run!");    }  }).start();

可以简化成

new Thread(() ->System.out.println("Run!")).start();

Github

插件:retrolambda

二:Java 8和Jack编译

参考Android官网

android {  ...  defaultConfig {    ...    jackOptions {      enabled true    }  }  compileOptions {    sourceCompatibility JavaVersion.VERSION_1_8    targetCompatibility JavaVersion.VERSION_1_8  }}

注意: 需要使用Android N 也就是API24,以下是官方原话:
To start using these features, you need to download and set up Android Studio 2.1 and the Android N Preview SDK, which includes the required Jack toolchain and updated Android Plugin for Gradle. If you haven’t yet installed the Android N Preview SDK, see Set Up to Develop for Android N.

开启jack编译后,不能使用apt插件,报异常:Error:Could not find property ‘options’ on task ‘:app:compileDebugJavaWithJack’.参考:google issues

补充

可以使用annotationProcessor代替apt插件,之后即可使用jack编译
让Android studio支持java8_第1张图片

更多相关文章

  1. Android 升级Android Studio升级3.5提示下载fastutil插件
  2. Android 使用正则表达式
  3. Android Studio常用插件
  4. Android Studio 常用插件收集
  5. 几款好用的Android Studio插件
  6. Android工程的gradle版本和gradle plugin插件对应关系
  7. Android studio 无法搜索插件
  8. Android 实现简单的插件化模块化.
  9. 部署Android SDK 和Eclipse 插件

随机推荐

  1. Serializable和Parcelable的解析与使用
  2. android(1)(四种点击事件)
  3. Android init.rc init.vendor.rc 介绍
  4. android 蓝牙知识链接汇总
  5. HandlerThread的使用
  6. 2011.09.13(3)——— android 添加快捷方式
  7. Android获取本机蓝牙地址
  8. Error:Android Source Generator: Cannot
  9. Gradle:Android打包动态传参及多productFl
  10. BadgeView 与 RadioButton