Android Game Time Handling - PullRequest
       2

Android Game Time Handling

2 голосов
/ 30 ноября 2011

Я честно новичок в разработке игр и Android. На данный момент я работаю над игрой, которая похожа на виртуальную игру с домашним животным, в которую вовлечено «Game World Time». Вы знаете, где игрок выходит, а затем возобновляет игру через несколько часов, а затем происходит прогресс в течение этого времени. Как это должно быть сделано правильно? Если я буду использовать системное время в качестве ориентира, это будет означать, что пользователь может обмануть игру, правильно отрегулировав время? Надеясь, что кто-нибудь даст мне понять, как работают подобные игры. Заранее спасибо!

Ответы [ 2 ]

1 голос
/ 30 ноября 2011

Вы абсолютно правы.Можно обмануть, установив внутренние часы на что-то другое.Однако есть обходные пути.

Использование System.currentTimeMillis(), скорее всего, можно обмануть, установив часы.Использование SystemClock будет еще сложнее реализовать, потому что, если пользователь внезапно перезагрузит телефон?Тогда это будет выглядеть еще больше как хаки.

Вы можете использовать ntp сервер , чтобы получить временную метку от этого, или вы можете использовать время GPS из LocationManager , но лучшее решение на данный момент - это установкадо вашего собственного сервера, который действует как веб-сервис, который также предоставляет временные метки.

0 голосов
/ 30 ноября 2011

Вы можете использовать SystemClock#elapsedRealtime() (или SystemClock#uptimeMillis(), в зависимости от того, что подходит).Я не уверен, что в этой реализации есть способ обмануть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...