Google Endpoints为JAVA生成的库包含错误

时间:2013-04-25 20:58:29

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

我对生成过程有一些奇怪的问题。点击Generate Cloud Endpoint Client Library后一切正常,但如果我查看endpoint-libs/文件夹,我看到以前的文件夹结构已更改。

它的第一部分仍然可以endpoint-libs/libmyname-v1/myname/myname-v1-generated-source/ 但下一个是com/google/api/services/my.package.name/myname/com/google/api/services/my.package.name/myname/model/

尽管生成的库中的每个.java文件在我看来都有错误的包:

    package com.google.api.services.my.package.name.myname.model;

如果有人遇到这个问题并解决了它?

2 个答案:

答案 0 :(得分:2)

这是一个已知问题。您可以查看解决方法here,或按照此bug entry了解修补程序的状态。

答案 1 :(得分:1)

Google刚刚发布了GPE 3.2.3和服务器端修复程序,似乎可以解决问题;但是,现有代码不一定是向后兼容的。例如,标准Google生成的GCMIntentService需要进行更改:

  1. 迁移到使用新的com.google.api.services路径,如下所示:

    import com.google.api.services.deviceinfoendpoint.Deviceinfoendpoint; import com.google.api.services.deviceinfoendpoint.Deviceinfoendpoint.Builder; import com.google.api.services.deviceinfoendpoint.model.DeviceInfo;

  2. 修改了对插入方法的调用:

    endpoint.insertDeviceInfo(new com.google.api.services.deviceinfoendpoint.model.DeviceInfo()。setDeviceRegistrationID(registration))。execute();

    为:

    endpoint.deviceInfoEndpoint()。insertDeviceInfo(new com.google.api.services.deviceinfoendpoint.model.DeviceInfo()。setDeviceRegistrationID(registration))。execute();

  3. 我无法找到有关为何需要破损和理由的官方文件。