Каков наилучший способ реализовать таймер обратного отсчета для очков в игре для Android, например: пользователь теряет все очки & он получит 5 очков через 1 час. как реализовать это с учетом того, что приложение может быть уничтожено & оставшееся время для 5 баллов будет видно в приложении во время работы! примечание: игра простая, не использующая двигатель, просто андроид чистый.Таймер обратного отсчета в Android-игре для очков
ответ
Есть ли время «бегать», когда пользователь не находится в игре, или нет? Если он «запустится» в фоновом режиме, просто сохраните время начала игры и вычислите все, что от него().
В случае, если таймер останавливается в фоновом режиме, храните полную продолжительность с некоторой разумной точностью (может быть достаточно 1, если бонусы изменяются в час) и хранить session_start в onGameResume и пересчитывать продолжительность в onGameStop от duration += *now* - session_start
.
Программист: всякий раз, когда вы работаете с «отметками времени», используйте время UTC [для хранения и расчетов] (не пользовательский часовой пояс, так как он может легко меняться, если пользователь перемещается/и т. Д.). Сроки и время, скорректированные по часовому поясу, представляют собой «форматирование вида», выполненное до отображения значения, а не часть хранения значений.
Такая простая реализация легко обмануть, изменив время устройства вручную перед запуском игры. В случае, если это несколько более сложная задача, вы можете подумать о том, чтобы добавить некоторые запутанные механизмы защиты, такие как сохранение, какие даты уже произошли, и использовать их для какой-либо эвристики для обнаружения манипуляций (но помните, что само устройство может легко перейти + - несколько минут в минуту в случае, если RTC является очень неточным, батарея была истощена в течение более длительного времени, или пользователь путешествует в странный часовой пояс (IIRC есть некоторые с смещением +30 минут), и опытный хакер также отключит ваши дополнительные проверки, поэтому не тратьте слишком много усилий на этом, кто-то обманет его).
- 1. Таймер обратного отсчета для pygame
- 2. Таймер обратного отсчета для android
- 3. таймер обратного отсчета
- 4. Таймер обратного отсчета (JS)
- 5. Двойной таймер обратного отсчета
- 6. Метеор: таймер обратного отсчета
- 7. Таймер обратного отсчета
- 8. Таймер обратного отсчета JS
- 9. Таймер обратного отсчета Javascript
- 10. Таймер обратного отсчета WPF
- 11. Таймер обратного отсчета PHP
- 12. Таймер обратного отсчета javascript
- 13. Таймер обратного отсчета android
- 14. Простой таймер обратного отсчета
- 15. Таймер обратного отсчета Python
- 16. xPages таймер обратного отсчета
- 17. сделать таймер обратного отсчета
- 18. Таймер обратного отсчета Ruby
- 19. MODx таймер обратного отсчета
- 20. таймер обратного отсчета
- 21. TimeSpan таймер обратного отсчета
- 22. Таймер обратного отсчета JavaScript
- 23. Таймер обратного отсчета swift
- 24. Повторить таймер обратного отсчета?
- 25. Таймер обратного отсчета helppp
- 26. Таймер обратного отсчета
- 27. Таймер обратного отсчета, Android
- 28. Таймер обратного отсчета неточно
- 29. Таймер обратного отсчета Android
- 30. AngularJS Таймер обратного отсчета