如何处理 Google API SHA-1 证书认证以允许多个用户?
How to handle Google API SHA-1 Certificate Authentication to allow multiple users?
对于我们的高级项目,我和我的四个同学合作构建了一个使用 Google 地图的 Android 应用程序。
到目前为止一切正常,但我们遇到了一个问题,我们不确定如何解决。
使用地图 API 时,您注册一个 API 密钥,该密钥分配给我们正在创建的程序。为了验证 Google 开发者控制台上的 API 密钥,它必须与 SHA-1 证书相关联,这似乎是由我们的 JDK 生成的。看起来,即使我们五个人都在从事同一个项目,我们都有不同的 SHA-1 认证。
是否可以让我们所有人都为我们的项目使用单一的 SHA-1 认证,即使我们在不同的计算机和手机上,这样我们就不需要通过发现我们的每个单独认证并注册它们的过程?
一旦我们准备发布应用程序(或至少与其他同学分享以进行测试),我们如何解决此认证问题?显然我不能花时间分别注册我的 40 名同学的证书,一旦我们将其发布到 public 将无法这样做。如何解决这个问题?
我在 Google API 文档页面上搜索了关于此的内容,其中有很多关于 API 密钥的信息,但令人惊讶的是,关于 SHA-1 认证的信息很少,这是身份验证的一个同样重要的方面。
我也在这个网站上搜索过,发现了类似的问题,但大多数似乎都涉及用户凭据(IE 登录名和密码)。目前,我们使用的唯一凭据是 Facebook 登录(通过 FB API),所以我认为这无关紧要(尽管我可能是错的)。
非常感谢您的时间和智慧。
这是因为 SHA-1 指纹是由用于签署构建的密钥库生成的。位于 android 主目录中的默认调试密钥库在每台计算机上都是不同的。您可以从您正在使用的所有调试密钥库中添加指纹,也可以共享相同的密钥库文件。
通过将密钥库存储在项目文件夹中,然后使用带有 signingConfig 的 gradle 构建文件引用它,可以轻松共享相同的密钥库。见 example
另一个简单的解决方案是在您设置的 Google 地图 API 项目的 Google 云控制台中添加每个人的 SHA-1 指纹。
对于我们的高级项目,我和我的四个同学合作构建了一个使用 Google 地图的 Android 应用程序。
到目前为止一切正常,但我们遇到了一个问题,我们不确定如何解决。
使用地图 API 时,您注册一个 API 密钥,该密钥分配给我们正在创建的程序。为了验证 Google 开发者控制台上的 API 密钥,它必须与 SHA-1 证书相关联,这似乎是由我们的 JDK 生成的。看起来,即使我们五个人都在从事同一个项目,我们都有不同的 SHA-1 认证。
是否可以让我们所有人都为我们的项目使用单一的 SHA-1 认证,即使我们在不同的计算机和手机上,这样我们就不需要通过发现我们的每个单独认证并注册它们的过程?
一旦我们准备发布应用程序(或至少与其他同学分享以进行测试),我们如何解决此认证问题?显然我不能花时间分别注册我的 40 名同学的证书,一旦我们将其发布到 public 将无法这样做。如何解决这个问题?
我在 Google API 文档页面上搜索了关于此的内容,其中有很多关于 API 密钥的信息,但令人惊讶的是,关于 SHA-1 认证的信息很少,这是身份验证的一个同样重要的方面。
我也在这个网站上搜索过,发现了类似的问题,但大多数似乎都涉及用户凭据(IE 登录名和密码)。目前,我们使用的唯一凭据是 Facebook 登录(通过 FB API),所以我认为这无关紧要(尽管我可能是错的)。
非常感谢您的时间和智慧。
这是因为 SHA-1 指纹是由用于签署构建的密钥库生成的。位于 android 主目录中的默认调试密钥库在每台计算机上都是不同的。您可以从您正在使用的所有调试密钥库中添加指纹,也可以共享相同的密钥库文件。
通过将密钥库存储在项目文件夹中,然后使用带有 signingConfig 的 gradle 构建文件引用它,可以轻松共享相同的密钥库。见 example
另一个简单的解决方案是在您设置的 Google 地图 API 项目的 Google 云控制台中添加每个人的 SHA-1 指纹。