我是一名Android应用程序开发人员,最近我正在使用Java 7版本,现在我想开始使用Java 8开发应用程序,但我注意到它们只适用于Android 7.0。我希望我读错了,因为我不明白为什么他们不支持Java 8具有巨大的潜力......而且9月份来自Java 9
PS:您可以使用Java 8和适用于Java 7的较低版本为Android 7.0及更高版本执行相同的apk吗?
答案 0 :(得分:2)
我注意到它们仅适用于Android 7.0
正确。 lambda表达式是个例外,开发工具可以将其转换为可以在旧设备上运行的东西。
我希望我读错了,因为我不明白他们为什么不支持Java 8
Java 8于2014年发布.Android 1.0于2008年发布.Google没有我们所知的时间机器,因此它们不能让Java 8提前六年发布。出于兼容性原因,Google不会替换旧设备上的类库,而旧设备通常无法获得更新。
至于为什么直到2016年部分Java 8才能在Android上使用,所有人都能在这里做的是提供意见(工程时间,Oracle的法律问题等)。
您可以使用Java 8和适用于Java 7的较低版本为Android 7.0及更高版本执行相同的apk吗?
没有。原则上,你可以拥有单独的APK,一个使用Java 8,一个不使用,你可以为不同的CPU架构和内容提供单独的APK。我不知道任何应用分发渠道是否会通过minSdkVersion
支持单独的APK。
答案 1 :(得分:0)
我使用retrolamda
在Java 8中开发了很长时间至少现在没有错误。^^