Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 云端点方法可见性_Java_Android_Google App Engine_Google Cloud Endpoints - Fatal编程技术网

Java 云端点方法可见性

Java 云端点方法可见性,java,android,google-app-engine,google-cloud-endpoints,Java,Android,Google App Engine,Google Cloud Endpoints,我正在用开发一个Android应用程序,我已经阅读了很多关于它的文档和教程,但仍然缺少一个信息:如何选择Android客户端可以看到的后端方法? 假设我有一个FriendshipEndpoint,FriendshipEndpoint有以下方法: @ApiMethod(name = "listFriendship", path = "listFriendship") public CollectionResponse<Friendship> listFriendship(

我正在用开发一个Android应用程序,我已经阅读了很多关于它的文档和教程,但仍然缺少一个信息:如何选择Android客户端可以看到的后端方法?
假设我有一个FriendshipEndpoint,FriendshipEndpoint有以下方法:

@ApiMethod(name = "listFriendship", path = "listFriendship")
public CollectionResponse<Friendship> listFriendship(
        @Nullable @Named("cursor") String cursorString,
        @Nullable @Named("limit") Integer limit)
@ApiMethod(name=“ListFriendly”,path=“ListFriendly”)
公众收集响应列表友谊(
@可为null的@Named(“游标”)字符串cursorString,
@可为空@命名(“限制”)整数限制)
编辑友谊端点使用
@Api
注释进行注释

此方法应仅在后端可见(Android客户端不可见)

我已尝试删除@ApiMethod anotation->不起作用,该方法仍在浏览器的api资源管理器中可见。
将access modifier设置为private对我来说不是一个解决方案,因为我想从其他端点调用此方法。
移除访问修饰符对我来说也不是解决方案,因为我需要这个方法在其他包(测试包)中可见


是否有解决此问题的方法?

不幸的是,目前不支持此方案。最好的解决方案是将该方法移动到一个helper类,并在所有端点类之间共享它。

当您删除
@ApiMethod
注释时,是否重新运行了
update
endpoints\u get\u client\u lib
maven目标?注释将导致该方法从通过REST和客户端库公开的云API中被排除。@LarrySchiefer我没有重新生成云端点库,但在我重新运行没有
@ApiMethod
注释的项目后,该方法仍然“对世界可见”,所以它也可以被Android客户端调用。您所说的与“类中所有带有
@Api
注释的公共、非静态、非桥接方法都在Api中公开,无论它们是否具有
@ApiMethod
注释。”[1],不是吗?我的端点也使用
@Api
注释进行注释。()你说得对,我忘记了顶级的@Api注释。很抱歉造成混淆。感谢您的回答,但是是否有一些参考资料证实了您的回答,或者“没有任何信息,说明如何处理云端点方法的可见性”?:“使用@Api注释的类的所有公共、非静态、非桥方法都将在公共Api中公开。”此外,我是一名云端点工程师。