在android studio中使用Java 8

即时通讯使用Android工作室,我想使用lambdaexpression式,只能从Java 8,当我尝试使用它,我得到:

Lambda expression are not supported at this language level. 

那么,我该如何改变AndroidStudio?

  • 使用jack时,Lambdaexpression式在Android中的IncompatibleClassChangeError崩溃
  • android studio error:默认接口方法仅支持从Android N开始(--min-api 24)
  • Android应用程序build立与错误的JDK(?)莫名其妙
  • 为JellyRefreshLayout模块导入新的Android模块失败
  • 使用默认或静态接口方法,而不使用--min-sdk-version> = 24
  • 每次更新到1.8路径时,Android Studio JDK位置都会更改回1.7
  • Android Studio重构将恢复所有的lambda和其他Java 8function
  • Maven:在应用程序中使用Java 8库,使用retrolambda-maven-plugin和DEX-ed使用android-maven-plugin
  • 那么,我该如何改变AndroidStudio?

    你不能。 Android支持Java 7.如果你只想使用AS作为Lambda,你可以使用gradle-retrolamba或者retrolambda ,后者在java 6/7上可以使用retrolambda。

    Android支持Java 6到KitKat(4.4),还有一些小的语法糖(比如菱形运算符)和Java 7(Lollipop和Marshmallow atm)。 Lambdas和其他Java 8的东西只能作为插件(例如gradle-retrolambda或原始retrolambda )。 他们可能会在某些时候被包含在API中(比如Java 7和KitKat),但似乎很快就不会。