android应用程序流量中的持续时间

android应用程序流量中的持续时间,android,google-maps,google-api,Android,Google Maps,Google Api,我正在尝试从Google Directions API获取响应,包括duration\u in\u traffic。在响应文件中,包含该值的条件如下: 该请求包括一个用于工作客户端和客户端的有效Google Maps API 签名参数 如果我正确理解GoogleAPI,那么在服务器(web服务)调用中使用的是身份验证方案,将加密密钥包含到移动应用程序中以生成签名是个坏主意 那么,如何从android应用程序生成的请求中获得duration\u in\u流量?我是否可以通过使用Android应用程

我正在尝试从Google Directions API获取响应,包括
duration\u in\u traffic
。在响应文件中,包含该值的条件如下:

该请求包括一个用于工作客户端和客户端的有效Google Maps API 签名参数

如果我正确理解GoogleAPI,那么在服务器(web服务)调用中使用的是身份验证方案,将加密密钥包含到移动应用程序中以生成签名是个坏主意


那么,如何从android应用程序生成的请求中获得
duration\u in\u流量
?我是否可以通过使用Android应用程序的
从Google开发者控制台来实现它?假设我需要“Google Maps API for Work”,如何为我的Google开发者控制台帐户启用它?

Google Maps for Work support的明确答案:

流量中的持续时间当前仅对已验证的用户可用 工作请求的映射,包括客户端ID和签名的映射。 不幸的是,在请求时无法返回此信息 以任何其他方式指示。此外,不可能放置 使用Android或iOS密钥请求任何Web服务。 这些仅与相应的移动API一起工作

如果要从移动设备发出方向请求,请 实现这一点的明智方法是通过您的 拥有自己的服务器。实际上,设备将请求发送到服务器 (如果您愿意,可以使用某种形式的身份验证)和服务器 然后将工作请求地图发送给我们。一旦收到 此响应将发送回移动设备。这样做 您不公开您的加密密钥来拒绝请求


TL;DR:无法从android应用程序使用,您必须使用您的服务器作为代理,并实施自己的身份验证(以及速率限制、节流等)以记住您的配额

duration\u in\u流量
不适用于android,它是Google Map Web API的一部分,特别是。通过调用web api或实现一些第三方库(如)。你所说的安卓键是用来访问API的。谷歌工作地图是一项付费服务,这是完全不同的。是的,我知道它不是地图库的一部分,我通过HTTP请求使用它。但我仍然不能确定身份验证。或者你根本不应该从客户端应用程序使用它?