且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Java 8是否可以在Android api 24及更高版本上运行?还是可以在较低的api中使用?

更新时间:2023-08-22 20:09:28

更新: 从Android Studio 2.4开始,将不建议使用Jack编译器,并将Java 8支持集成到默认的构建链中.一些Java 8功能可在任何API级别上使用,而某些功能仍限于API> = 24,请参见:

Update: Beginning with Android Studio 2.4, the Jack compiler will be deprecated and Java 8 Support will be integrated in the default build chain. Some Java 8 features are available on any API level, some are still limited to API >= 24, see:

https://developer.android.com/studio/preview/features/java8-support.html

旧答案:

Java 8功能从API级别9开始可用,但仅如果您使用的是Android Studio 2.1(预览版)和Android N预览版SDK

The Java 8 features are available beginning from API level 9, but only if you use Android Studio 2.1 (preview) and the Android N Preview SDK

http://android- developers.blogspot.de/2016/03/first-preview-of-android-n-developer.html

改进的Java 8语言支持-我们很高兴将Java 8语言功能引入Android.借助Android的Jack编译器,您现在可以在Android版本(甚至是Gingerbread)上使用许多流行的Java 8语言功能,包括lambda等.新功能有助于减少样板代码.例如,在提供事件侦听器时,lambda可以替换匿名内部类.现在,N或更高版本还提供了一些Java 8语言功能,例如默认和静态方法,流和功能接口.有了Jack,我们期待在保持向后兼容性的同时更紧密地跟踪Java语言.

Improved Java 8 language support - We’re excited to bring Java 8 language features to Android. With Android's Jack compiler, you can now use many popular Java 8 language features, including lambdas and more, on Android versions as far back as Gingerbread. The new features help reduce boilerplate code. For example, lambdas can replace anonymous inner classes when providing event listeners. Some Java 8 language features --like default and static methods, streams, and functional interfaces -- are also now available on N and above. With Jack, we’re looking forward to tracking the Java language more closely while maintaining backward compatibility.