带有Google Cloud Datastore的Android应用

时间:2015-06-18 12:45:28

标签: android google-app-engine google-cloud-datastore

我正在使用Android Studio,我想将我的应用程序连接到互联网。我想保存Google(高复制)数据存储区中的高分。

在使用Google插件的Eclipse中,它似乎非常简单(只需创建一个新的Web应用程序并连接它)。但它如何在Android Studio中运行?我尝试用端点和东西做一些事情,但没有真正有效。

2 个答案:

答案 0 :(得分:8)

您也可以使用Android Studio执行相同的操作。

1)关于如何构建GAE端点应用程序,Google有一个关于GitHub的简单教程(分步指南): 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):

  

Objectify是专为Google App Engine数据存储区设计的Java数据访问API。它占据了中间地带#34;比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)生成端点: 端点为Android客户端提供API。

  • 右键单击要向客户端公开的实体(例如客户)。
  • 选择从Java类生成Cloud Endpoint 。这会生成一个基本API 所选实体的描述和实施。它已经创造了 方法get / insert / list / patch / remove / update。这也为客户端生成库。 如果您在生产中使用此生成的方法,请注意!

6)在Android应用程序中创建一个AsyncTask(http://developer.android.com/guide/components/processes-andthreads.html#AsyncTask):

  

AsyncTask允许您在用户界面上执行异步工作。它执行阻止   在工作线程中的操作然后在UI线程上发布结果,而不需要您   自己处理线程和/或处理程序。   要使用它,必须将AsyncTask子类化并实现doInBackground()回调方法   在后台线程池中运行。要更新UI,您应该实现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/
  • 下创建一个新项目
  • 项目名称:项目名称
  • 项目ID :用于访问后端的名称:项目的根URL是https:// projectId .appspot.com /。

创建项目后,您必须打开Android Studio并转到构建/部署模块到App Engine

  • 模块:您的后端模块
  • 部署到:选择您创建的项目 - 您必须使用自己的Google帐户登录。显示所有项目,您可以选择要部署到的项目。
  • 版本:版本号 - 您可以部署不同版本的应用程序。默认情况下,如果访问项目,则会加载版本1。你可以改变 通过添加项目ID前面的版本号(例如https://2 projectId .appspot.com / - 这将加载版本2)。
  • 点击部署。现在您必须更改根URL http://10.0.2.2:8080/_ah/api/到您的项目网址。

https://console.google.com/下,您可以选择项目。有一些有用的 有关您的项目的信息: - 在“监视/日志”下,您可以找到包含已触发的日志条目的列表。 - 在Storage / Cloud Datastore / Query下,您可以看到您的数据 数据库

我希望这能指导您解决问题。 https://cloud.google.com/appengine/docs上提供了更多信息。我建议您阅读本网站以更好地了解GAE。

答案 1 :(得分:0)

现在,通过Google云端功能,您可以选择将移动应用中的请求发送到云端功能,也可以通过云端功能查询数据存储中的数据。以下是将数据存储与云功能https://github.com/GoogleCloudPlatform/google-cloud-java#google-cloud-datastore-ga

集成的库