使用Android限制的Cloud Platform API密钥和云端点的错误403

时间:2017-03-21 16:33:48

标签: android google-app-engine google-cloud-platform google-cloud-endpoints google-api-java-client

我在将Google Cloud Platform API密钥使用限制到Android应用时遇到了问题:我已经添加了其软件包名称和证书SHA-1指纹(调试版开始使用),但它无法正常工作。< / p>

My Cloud Platform API key panel

调用任何API时出现的错误是

  

403来自此Android客户端应用程序的请求&lt; empty&gt;被阻止了。

我使用Cloud Endpoints生成的客户端lib调用API,但我无法找到任何可在初始化时使用的方法来设置应用凭据,也不会它本身(我可以从&#34;&lt; empty&gt;&#34;在错误中猜测)。 我也无法在任何文档中找到任何有用的信息,就我而言,它似乎应该自行完成。

这是我的初始代码:

MyApi.Builder builder = new MyApi.Builder(new NetHttpTransport(), new AndroidJsonFactory(), null)
                .setApplicationName("<my package name>")
                .setRootUrl(<my root URL>)
                .setGoogleClientRequestInitializer(new MyApiRequestInitializer(<my API key>));

我也尝试了answer中的建议,但没有任何改变。

我有什么段落不见了吗?应该怎么做?

1 个答案:

答案 0 :(得分:0)

我相信问题仅出现在模拟器中。在模拟器中运行我的应用程序时出现相同的错误。但是,在实际设备上,我似乎没有问题。您在真实设备上测试过吗?