Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 对AndroidThreen.init()的调用是强制性的吗?_Java_Android_Threetenbp - Fatal编程技术网

Java 对AndroidThreen.init()的调用是强制性的吗?

Java 对AndroidThreen.init()的调用是强制性的吗?,java,android,threetenbp,Java,Android,Threetenbp,指示用户在其应用程序的onCreate()方法中调用androidThreen.init()。是的,这是对3tenbp的安卓(据说更快)改编,而不是原来的(完全便携的)3tenbp 然而,如果我忽略了这个电话,我的应用程序似乎运行良好,没有任何明显的错误。这种方法只是为了加快速度,预计可能会有很长的初始化时间,这样在第一次使用时就不会减慢速度(急切的初始化与懒惰的初始化)?或者,如果我没有正确初始化ThreeTenABP,是否有可能得到不正确的结果?描述了由于未能初始化库而导致的错误 主要收获:

指示用户在其应用程序的
onCreate()
方法中调用
androidThreen.init()
。是的,这是对3tenbp的安卓(据说更快)改编,而不是原来的(完全便携的)3tenbp

然而,如果我忽略了这个电话,我的应用程序似乎运行良好,没有任何明显的错误。这种方法只是为了加快速度,预计可能会有很长的初始化时间,这样在第一次使用时就不会减慢速度(急切的初始化与懒惰的初始化)?或者,如果我没有正确初始化ThreeTenABP,是否有可能得到不正确的结果?

描述了由于未能初始化库而导致的错误

主要收获:如果无法初始化ThreeTenABP,某些方法调用(那些依赖时区数据的方法调用)将抛出异常


如果您测试了代码中的每个ThreeTenABP调用,并确保它们都不会引发异常,则不确定会发生什么。这很可能是不受支持的配置。

我没有足够的信心来确定(因此,没有答案),但我认为如果没有此呼叫,您将失去使用优化端口的好处。调用注册优化的ZoneRulesProvider,这可能是ThreeTenABP比普通ThreeTenBP更快的原因。还要注意的是,从Android 8开始,有一个本机的
java.time
实现,由于它使用了系统本机时区数据库,它的性能应该会更好。是的,我知道Android 8+中有
java.time
,我只是不知道如何在这两个实现之间切换(考虑到代码位于一个可移植库中,该库需要支持Android 4.4+和JRE)。