У кого-нибудь еще была проблема, когда Android измеряет интервал времени некорректно? На всех моих устройствах, кроме моего HUDL2, этот код возвращает правильное количество времени: проверяется путем запуска секундомера.System.currentTimeMillis() и nanoTime() корректно не установлены
long time = System.currentTimeMillis();
long timenano = System.nanoTime();
try {
Thread.sleep(12000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
long finish = System.currentTimeMillis();
long finishnano = System.nanoTime();
long totalTime = finish-time;
long totalTimeNano = finishnano-timenano;
Log.i(TAG,"totalTime="+totalTime+", nano="+totalTimeNano/1000000);
Возвращает 12seconds, но на самом деле занимает ближе 17 секунд для запуска (по секундомеру). Nano времени и Миллис имеют одни и те же результаты ...
Это осознание произошло потому, что игра, которую я написал работает медленнее на HUDL2
Просто сыграл еще одну игру на HUDL2 - и заметил ту же проблему на Traffic Racer. Движение HUDL2 происходит медленнее. Я могу только предположить, что игра также полагается на системное время каким-то образом. – user2654943
Есть некоторая информация, которая может быть полезна в документации _SystemClock_; http://developer.android.com/reference/android/os/SystemClock.html. Тем не менее разница в 5 секунд звучит слишком много. – harism
Очень странно. Просто установили последнее обновление HUDL2, и проблема исчезла. Наверное, это было просто перезапуск. Но трудно понять. Были некоторые проблемы, о которых сообщалось с ошибками HUDL2 - возможно, это связано. – user2654943