有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

我可以使用Android Sdk<=26的java时间库的所有功能吗

java时间库具有DateTimeFormatter、LocalTime库等功能,安卓 studio指出这些功能仅在sdk版本中支持>;=26.我目前需要在我的应用程序中使用它。那么,我是否需要将minSdkVersion增加到26(它将不支持很多设备),或者实现我自己的方法。Android增加了requires api符号的选项,这是否意味着早期sdk版本将无法访问该功能

但令人惊讶的是,一个合适的时间库只支持sdk版本26。值得注意的是,该项目是用kotlin编写的


共 (2) 个答案

  1. # 1 楼答案

    您可以将minSdkVersion升级到26。由于当前版本为30,因此与此相比,26非常低。此外,您无需担心大多数设备都不支持它。实际上,大多数设备都是此版本的目标设备

  2. # 2 楼答案

    1. 您可以使用ThreeTenABP库,对于较旧的Android版本,它是java.time.*的一个端口,但具有不同的包名。缺点是它的性能更差,增加了代码大小和方法数,并且可能不会得到更新

    2. 大部分java.time.*应独立于最低API版本提供,请参见https://developer.android.com/studio/write/java8-support-table

    3. 您可以在https://gs.statcounter.com/android-version-market-share/mobile/worldwide/上看到不同版本的市场份额,SDK26对应于8.0(Oreo)。因此,全球约87%的安卓设备都有此版本或更高版本,但这可能取决于您的目标受众