libgdx を使用して Android 用のリアルタイム ゲームを開発したいと考えています。ゲームが実行されていなくても、いくつかの変数を更新する必要があります。
たとえば、お金を 1 時間 (実際の時間) あたり 10 クレジット増やして、ゲームを終了して 1 時間後に戻ってきて、とにかくそのお金を獲得できるようにしたいと考えています。
どうやってやるの?
ありがとう
リアルタイムの場合、独自のサーバーをセットアップする必要はありません。パブリック タイム サーバーのいずれかを使用するだけです。ntp サイトから NtpMessage.java と SntpClient.java をダウンロードします。次に、ntp ポートを使用して SntpClient.java を実行します。例えば
java SntpClient 0.pool.ntp.org
SntpClient クラスのコードを使用して、必要に応じて微調整できます。
ユーザーがゲームから抜けたとき (一時停止状態)、ntp から時刻を取得して保存します。ユーザーがゲームを起動したら、もう一度時間を取得して比較します。
これら2つの可能な解決策はどうですか(簡単と難しい)
難しいのは...完全に制御するには、サーバーにロジックを実装し、アプリケーションをそれに接続してクレジットを取得する必要があります (高価ですが優れたソリューションです)。アプリは永続的なデータを保持しません。アプリは、表示、対話、サーバーからのデータの送受信にのみ使用されます。
簡単なもの...電話の時間と一緒にアプリを使用するだけです。このソリューションのコストははるかに低くなりますが、アプリは電話の時間操作に対して脆弱になります。