作者:TTTTTTTT-Tang | 来源:互联网 | 2023-05-20 12:08
我试图在我的Android应用程序中使用java.time.LocalDate,但是如果我尝试导入它,那么java.time中的任何类都会在Android Studio 1.1中无法解析符号错误
我能解决这个问题的唯一原因是它不支持java 8.真的是这样吗?
1> Basil Bourqu..:
Android API等级26
Android API级别26获得了java.time的实现,包括您的LocalDate
类.
早期的Android
对于Android <26,替代方案包括:
ThreeTen- Backport是Java 6和7的大部分java.time功能的后端.
ThreeTenABP使 ThreeTen- Backport适应Android.
Joda-Time常用于Android项目.Joda-Time启发了Java 8中的java.time包,但它们不是替代品.Joda-Time团队建议迁移到java.time.
关于
java.time
该java.time框架是建立在Java 8和更高版本.这些类取代麻烦的老传统日期时间类,如java.util.Date
,Calendar
,和SimpleDateFormat
.
现在处于维护模式的Joda-Time项目建议迁移到java.time类.
要了解更多信息,请参阅Oracle教程.并搜索Stack Overflow以获取许多示例和解释.规范是JSR 310.
您可以直接与数据库交换java.time对象.使用符合JDBC 4.2或更高版本的JDBC驱动程序.不需要字符串,不需要课程.java.sql.*
从哪里获取java.time类?
Java SE 8, Java SE 9, Java SE 10及更高版本
内置.
带有捆绑实现的标准Java API的一部分.
Java 9增加了一些小功能和修复.
Java SE 6和 Java SE 7
许多java.time功能都被反向移植到ThreeTen-Backport中的 Java 6和7 .
Android的
更高版本的Android捆绑java.time类的实现.
对于早期的Android(<26),ThreeTenABP项目采用ThreeTen-Backport(如上所述).请参阅如何使用ThreeTenABP ....
2> Meno Hochsch..:
是的,Android不支持Java-8.关于Java-8中包含的新日期/时间API,您可以查看此问题:
http://code.google.com/p/android/issues/detail?id=62192
目前还没有计划在谷歌Android中引入JSR-310(java.time-package).