【问题标题】:GAE Endpoint, Objectify and Android - Where are my data being saved?GAE Endpoint、Objectify 和 Android - 我的数据保存在哪里?
【发布时间】:2017-01-14 22:15:10
【问题描述】:

我正在 Android 上开发一个应用程序,并尝试在 Google Cloud Datastore 上保存一些数据。我已经实现了一个 Google App Engine Endpoint 并在其上设置了 Objectify,然后我已经部署到了 App Engine。

最后我在我的 android 项目中编写了一些 AsyncTask 来与 API 进行通信。

通信正常,我的日志中没有显示错误消息,但是当我这样做时(在 App Engine 端点中)

Car car = new Car("black","1200","2016");
ofy().save().entity(car).now();

它执行正确,但我转到我的 Datastore 控制台,它没有任何实体。

如果我这样做了,也一样

List<Car> cars = ofy().load().type(Car.class).list();

我总是得到一个空结果。

那么我的数据保存在哪里?

更新

以前我在我的 Endpoint Api 类 (MyEndpoint.java) 中编写了 Objectify 代码,现在我试图只依赖 Android Endpoint Auto-generation,所以我创建了一个新模型 (@Entity) 和使用了 Android Studio 中内置的“Generate Cloud Endpoint from java class”,所以现在我有了一个新的CarEndpoint。它包含insertlist api 方法(以及更多)。

所以从应用程序代码中,在 AsyncTask 中,我正在执行以下操作:

    Car car = new Car();
    car.setYear("2016");
    car.setCC("1200");
    car.setColor("black");
    try {
        carApi.insert(car).execute();
    } catch (IOException e) {
        e.printStackTrace();
    }

它被执行并且没有错误被抛出。这是日志:

 I/System.out: open:https://app-backend.appspot.com/_ah/api/carApi/v1/car
 I/System.out: [CDS]rx timeout:1
 I/System.out: [CDS]rx timeout:1
 I/System.out: [CDS]rx timeout:20000
 I/System.out: [CDS]rx timeout:20000
 I/System.out: [CDS]rx timeout:20000
 I/System.out: [CDS]rx timeout:20000
 I/System.out: [OkHttp] sendRequest<<

但同样,在我的 Datastore 控制台中,没有创建新对象。

再说一遍,我的对象保存在哪里?

更新 2

我仍然没有找到数据的保存位置,但在我更新之后,我现在可以使用list API 方法(自动生成)检索数据。

要从后端轻松使用 API 方法,您可以使用 APIs Explorer 。您可以使用浏览器访问它的地址

https://app-backend.appspot.com/

然后点击“GC Endpoint API Explorer”菜单项的顶部菜单。

数据似乎存储在 API 内部。我可以使用 Google 数据存储控制台查看它们吗?

【问题讨论】:

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


    【解决方案1】:

    是的,您应该能够通过云控制台查看您的实体:通过控制台菜单(单击左上角的汉堡包)选择“存储”组下的“数据存储”和此数据存储“区域的第一页” ”被命名为“实体”。从那里您可以按种类或 GQL 查询。

    另外,你可以看看https://cloud.google.com/appengine/docs/java/console/managing-datastore

    【讨论】:

    • 你说得对,现在我可以在 Google Cloud Datastore 控制台中查看我的记录了。
    • 还有一件事:您会注意到,有时“实体”控制台页面需要一些时间(几分钟)才能通过新的添加/删除/等进行更新。
    猜你喜欢
    • 2013-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-07
    • 2010-12-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多