Android Studio中配置Retrolambda插件【mac】

版权声明:本文为博主原创文章,不得随意转载,转载请注明出处!!! https://blog.csdn.net/YuDBL/article/details/78603669

转载请注明出处:http://blog.csdn.net/yudbl/article/details/78603669

最近用到lambda语法,所以博客记录总结下。配置Retrolambda插件来使用lambda语法

Java8比较大的一个变化是加入了Lambda表达式,一种紧凑的,传递行为的方式。它可以使你的代码更简洁、逻辑更清晰。特别是用Rxjava的时候,将各种数据变换使用Lambda表达式来简化,可以最大化的减少样板代码,使整个数据流的处理逻辑十分清晰。

 retrolambda又是什么呢?它是 Java 5/6/7 中对Java8 Lambda 表达式的非官方兼容方案。因为目前Android的所有版本(除了N Preview),都还不支持java8。

gitHub地址:https://github.com/orfjackal/retrolambda

我的demo源码地址:http://download.csdn.net/download/yudbl/10129737

1、需安装Jdk1.8

查看已安装的jdk版本方法如下:


2、AS相关文件进行修改配置

在Android Studio需要对以下文件进行修改:

 

(1)build.gradle (Project )

在buildscript->dependencies中添加:

classpath 'me.tatarka:gradle-retrolambda:3.6.0'
  • 1

注意: 如果com.android.tools.build:gradle:2.2.0为2.2以上的对应的me.tatarka:gradle-retrolambda:3.6.0 必须为3.3.0以上

 以下是整个build.gradle (Project )文件:

( 2 )build.gradle (module )

在最外面添加:

apply plugin: 'me.tatarka.retrolambda'

retrolambda {
    javaVersion JavaVersion.VERSION_1_6
}
  • 1
  • 2
  • 3
  • 4
  • 5

在android{}里面添加:

 compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
  • 1
  • 2
  • 3
  • 4
  •  

如以下build.gradle (module ): 

(3)proguard-rules.pro

在 proguard-rules.pro (ProGuard Rules for app )中添加进行混淆处理:

-dontwarn java.lang.invoke.*
  • 1

(4)在activity测试如下:

不配置Retrolambda插件,下面几行代码是会报错的

TextView textView_lambda = (TextView) findViewById(R.id.test);
textView_lambda.setOnClickListener(v ->
        Toast.makeText(MainActivity.this,"测试lambda表达式!",Toast.LENGTH_SHORT).show()
);
 
参考:
http://blog.csdn.net/xx326664162/article/details/53946001
 
 
 

猜你喜欢

转载自blog.csdn.net/YuDBL/article/details/78603669
今日推荐