Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.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
Android Illegalacesserror java.util.concurrent.TimeUnit.toHours_Java_Android - Fatal编程技术网

Android Illegalacesserror java.util.concurrent.TimeUnit.toHours

Android Illegalacesserror java.util.concurrent.TimeUnit.toHours,java,android,Java,Android,为什么会这样: long diffInMis = date2.getTime() - date.getTime(); diffInHour = TimeUnit.MILLISECONDS.toHours(diffInMis); 扔这个: java.lang.IllegalAccessError:尝试访问方法 java.util.concurrent.TimeUnit.toHours:(Z)V ? 我在开发者控制台中有这个错误,无法重现。 据我所知,我只是自己做数学,但我很好奇 设备:HTC联想

为什么会这样:

long diffInMis = date2.getTime() - date.getTime();
diffInHour = TimeUnit.MILLISECONDS.toHours(diffInMis);
扔这个:

java.lang.IllegalAccessError:尝试访问方法 java.util.concurrent.TimeUnit.toHours:(Z)V

?

我在开发者控制台中有这个错误,无法重现。 据我所知,我只是自己做数学,但我很好奇

设备:HTC联想安卓2.2


答:API<9

Java 5中缺少时间单位,但没有。我猜您在运行时使用的是TimeUnit类的一个版本,它不包括toHours。当代码无法从引用位置访问字段或方法时,就会发生这种异常。

我在3台设备上的导出包上对其进行了测试,结果正常。这完全取决于运行时JVM。现在我知道了,它在API<9中丢失了。谢谢你给我指出了正确的方向。