2015-06-18 106 views
1

我正在使用Android Studio,我想將我的應用程序連接到互聯網。我想將高分保存在Google(高複製)數據存儲中。在使用Google插件的Eclipse中,它似乎很容易(只需創建一個新的Web應用程序並將其連接)。但是它在Android Studio中如何工作?我試着用端點和東西做一些事情,但沒有任何工作。Android應用程序與谷歌雲數據存儲

回答

7

你也可以在Android Studio中做同樣的事情。

1)是在GitHub上一個很好的和簡單的教程由谷歌就如何建立一個GAE端點應用程序(一步一步的指導): https://github.com/GoogleCloudPlatform/gradle-appengine-templates/tree/master/HelloEndpoints

2)對你有一個數據庫連接添加客觀依賴性:

compile 'com.googlecode.objectify:objectify:5.0.3' 

您也可以使用JPA或其他ORM框架。 Objectifity是專門爲GAE(https://github.com/objectify/objectify)設計:

客體是專門爲谷歌App Engine數據存儲而設計的Java數據訪問API。它佔據了「中間地帶」;比JDO或JPA更易於使用和更透明,但比低級API方便得多。 Objectify旨在讓新手立即生產,同時也暴露GAE數據存儲的全部能力。

3)我建議你看看如何使用客觀性:https://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify

4)創建您的實體:

//com.example.backend.entities 
@Entity 
public class Customer { 

@Id 
@GeneratedValue(strategy= GenerationType.IDENTITY) 
private Long id; 
private String firstname; 
private String lastname; 

//getters and setters 
//... 

} 

5)生成的端點: 終端提供的API爲Android客戶端。

  • 右鍵單擊要公開給客戶端的實體(例如Customer)。
  • 選擇從Java類生成雲端點。這將爲所選實體生成一個基本的API描述和實施。它已經創建了 方法get/insert/list/patch/remove/update。這也爲客戶端生成庫。 如果您在生產中使用此生成的方法,請注意!

6)在你的Android應用程序(http://developer.android.com/guide/components/processes-andthreads.html#AsyncTask)創建的AsyncTask:

的AsyncTask允許您在用戶界面上執行異步工作。它在工作線程中執行阻止 操作,然後在UI線程上發佈結果,而不需要您自己處理線程和/或處理程序。 要使用它,您必須子類AsyncTask並實現doInBackground()回調方法, 在後臺線程池中運行。要更新你的用戶界面,你應該實現onPostExecute(),其中 從doInBackground()提供結果並在UI線程中運行,這樣你就可以安全地更新你的UI。 然後,您可以通過從UI線程調用execute()來運行任務。

在GitHub的教程中找到基本實現如何創建的AsyncTask以及如何將Android客戶端連接到後端: https://github.com/GoogleCloudPlatform/gradle-appengine-templates/tree/master/HelloEndpoints

7)將應用程序部署到後端:

  • https://console.developers.google.com/
  • 項目名稱創建一個新項目:項目
  • 0123名
  • 項目ID:用於訪問後端的名稱:項目的根URL是https:// projectId .appspot.com /。

項目創建後,必須打開Android Studio和去構建/部署模塊到App Engine

  • 模塊:你的後端模塊
  • 部署到:選擇您創建的項目 - 您必須使用您的Google帳戶登錄。您的所有項目都會顯示出來,您可以選擇要部署到的項目。
  • 版本:版本號 - 您可以部署不同版本的應用程序。默認情況下,如果您訪問項目,則會加載版本1。您可以通過添加項目ID的infront版本(例如https://2,projectId .appspot.com/- 這將加載版本2)來更改 版本。
  • 點擊部署。現在,您必須將根URL從 http://10.0.2.2:8080/_ah/api/更改爲您的項目URL。

根據https://console.google.com/您可以選擇您的項目。關於您的項目有一些有用的 信息: - 在Monitoring/Logs下,您可以找到一個列表,其中包含已觸發的日誌條目。 - 在存儲/雲數據存儲/查詢下,您可以看到您的數據庫中的數據庫

我希望這可以指導您解決您的問題。 https://cloud.google.com/appengine/docs上有更多信息。我建議您閱讀本網站以更好地瞭解GAE。

+0

首先感謝您的快速回答。 我現在要做的是,1)將端點模塊添加到我的項目中。 2)創建我的實體類並註冊它們(即高分) 3)生成端點 4)「在你的Android應用程序中創建一個AsyncTask」?那是什麼 ?當我只想存儲我的數據時,我需要它嗎? 5)部署到App Engine。 這樣好嗎還是你有其他建議? –

+0

您需要一個AsyncTask通過Internet將數據發送到後端。我的回答應該爲您提供如何解決您的問題的信息。如果您在實施過程中遇到問題,可以提出更具體的問題。 – devz