2012-12-30 60 views
1

我正在爲兩位玩家編寫一個簡單的Android遊戲。我已經開發了一個離線版本(當兩個人交換電話時),現在想創建一個在線的版本。使用服務器進行轉向遊戲(Android) - 如何存儲數據?

他們的方式我想這樣做是使用Tomcat或我自己的PHP服務器爲我的網站。我的問題是,是否有可能以及如何存儲數據?

我認爲我需要發送給服務器的唯一東西是當前得分和代表板的數組。然後,我將能夠在客戶端檢索這些信息。我在想什麼?

我得說,我對這些東西都是全新的。我和我的朋友談過,他使用Java編程,他告訴我應該使用Tomcat。但是如何?這是一個本地服務器,所以它可以工作的唯一方式是當兩部手機連接到同一個網絡或什麼?

+0

Tomcat不再是一個「本地服務器」而不是PHP服務器;可以在任何支持它們的地方託管。 –

回答

0

最簡單的方法是在在線服務器上實現一套RESTful服務。 如果你願意,可以使用Tomcat,但最便宜的方法是使用PHP進行簡單的Web託管。 創建REST API,如/get/board, /get/move, /update/move, /authenticated等。

0

最簡單的出發方式可能不是任何真正的服務,而只是幾個PHP腳本和一個MySQL數據庫。

您將需要一些服務器,每個示例只需一個簡單的FTP服務器,您可以在其上放置一些可在互聯網上訪問的腳本,並託管(MySQL)數據庫。

然後根據保留分數的示例,您只需要2個腳本:1個保存,1個檢索玩家的分數。

保存將比分只是需要你一個鏈接調用按例如: www.server.com/saveScore.php?playerId=111 &得分= 60 在PHP中,你可以只帶了這一點與$ _GET ['playerId']和$ _GET ['score']並通過查詢將這些值保存到數據庫中。

返回比分到您的應用程序可以工作了與調用鏈接爲: www.server.com/retrieveScore.php?playerId=111 這將只是查詢數據庫的信息上的球員,然後打印它作爲XML或JSON。 然後你的應用程序可以再次解析響應(xml/json)。

一個好主意是將它從$ _GET移動到$ _POST(POST在鏈接中不可見,但需要更復雜的代碼來傳輸數據)。

一旦你完成了這個任務,你可以開始真正構建一個服務,爲了提高可維護性,可擴展性和安全性,REST將是一個不錯的選擇。

+0

非常感謝您的回答。事情是,這是我編程的術語項目,它應該包含儘可能多的Java和其他東西。我想要將PHP和SQL的數量降到最低!我不認爲需要數據庫,遊戲持續幾分鐘,並且不需要將數據存儲在數據庫中,只需要一個數組。或不? – user1928115

+0

那麼,即使沒有使用PHP,你仍然可以用Java來做同樣的事情,但是你需要一個支持Java的服務器,這通常只是一個更難的設置。 關於數據庫,它幾乎不是一個真正的「需求」,但如果你要採用最簡潔的方式,無論如何我都會去做,而且它沒有那麼多的工作,或許更容易。 如果它對於長時間保持數據並不重要,只是爲了展示概念證明,您還可以看看藍牙和NFC之類的東西,而不是在兩個設備之間進行通信。 –