在Android客户端上使用Cloud Endpoint模型中包含的枚举

时间:2015-02-12 21:35:39

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

我试图在名为CargoWrapper的实体中实现枚举。在我的Android应用程序中,我构建一个CargoWrapper对象以发送到端点方法,然后调用我的CargoWrapper设置器来设置实例varialbes。其中一个CargoWrappers实例变量是一个枚举,它被索引。为我的前端生成的唯一方法是setter和getter,我无法看到枚举。有谁知道如何从Android客户端设置枚举实例变量,看起来应该是非常直接的?

https://cloud.google.com/developers/articles/google-cloud-endpoints-for-android/

文件说: 关于支持的类型 •枚举。后端中的枚举在客户端代码中生成为字符串表示形式。换句话说,如果您在后端和客户端都使用枚举功能,则需要在两个位置定义枚举。

在Android客户端中使用枚举的示例非常棒。

1 个答案:

答案 0 :(得分:2)

最简单的方法是创建其他模块并将其包含在其他模块中。

build.gradle模块的

common

apply plugin: 'java'

dependencies {
   ...
}

在此模块中定义enum。你可以选择你想要的任何包。

现在在Android应用和后端模块中都包含common模块。

build.gradle其他模块:

dependencies { 
   ... 
   compile project(':common')
}

这样,您只有一个enum定义(而不是两个,在不同的模块中,当更改其中任何一个时,必须手动更新)。