两年前(2014年6月),我为Android应用程序创建了一个用于GCM推送通知的Android API密钥。从过去两天开始,GCM服务器在PHP中返回Unauthorized(401)响应。
我搜索了为什么GCM服务器将401返回给PHP,它提到API密钥无效。为什么Android API密钥无效?如果我为另一个应用程序创建一个服务器密钥,它可以正常工作。
Android API密钥是否有效(终身)?哪个密钥最适合GCM推送通知?是服务器,Android,iOS还是浏览器API密钥?那些密钥是否有效期?
请提供有关这四个API密钥及其生命周期的正确详细信息和说明。或者是否已弃用Android密钥?
答案 0 :(得分:0)
我有同样的问题。您需要创建一个"服务器密钥"替换" Android Key"。
访问Google APIs Console =>创建凭据=> API密钥=>服务器密钥
答案 1 :(得分:0)
API密钥是否有效/到期?
来自SO question的答案。这里明确指出,API密钥没有到期。
有关四个(服务器,androi,ios,浏览器)的详细信息和说明 密钥。
SERVER KEY - 如果您的应用程序在服务器上运行,请创建并使用服务器密钥。不要在服务器代码之外使用此密钥。例如,不要将其嵌入网页中。为防止配额被盗,请限制您的密钥,以便只允许来自您的服务器的请求。来源IP地址。
浏览器密钥 - 如果您的应用程序在客户端(如Web浏览器)上运行,请创建并使用浏览器密钥。为防止您的密钥在未经授权的网站上使用,请仅允许您管理的域中的推介。
IOS KEY - 如果您的应用在iOS设备上运行,请创建并使用iOS密钥。 Google会验证每个请求是否来自与您指定的某个捆绑包标识符匹配的iOS应用程序。应用程序的.plist文件包含其包标识符。示例:com.example.MyApp
ANDROID KEY - 如果您的应用在Android设备上运行,请创建并使用Android密钥。为此,您需要使用该密钥指定应用程序的SHA1指纹和包名称。
有关详细信息,请查看此page。
哪个密钥最适合GCM推送通知?
我发现在使用GCM推送通知时需要使用 SERVER KEY 的许多教程和SO问题。
来源