是否可以使用服务帐户流访问Google Play Developer API? 此处的文档(https://developers.google.com/android-publisher/authorization)仅提及OAuth 2.0 Web服务器流程。但目前还不清楚它是示例还是限制。
如果可能的话,提供一些工作示例链接会很棒。因为我无法通过“此开发者帐户不拥有应用程序”响应。
答案 0 :(得分:0)
可能使用服务帐户流访问Google Play开发者API。
EPROTONOSUPPORT
显示了如何使用service account email
和p12 file
使用服务帐户进行授权。
Official sample如下所示:
private static Credential authorizeWithServiceAccount(String serviceAccountEmail)
throws GeneralSecurityException, IOException {
log.info(String.format("Authorizing using Service Account: %s", serviceAccountEmail));
// Build service account credential.
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(HTTP_TRANSPORT)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(serviceAccountEmail)
.setServiceAccountScopes(
Collections.singleton(AndroidPublisherScopes.ANDROIDPUBLISHER))
.setServiceAccountPrivateKeyFromP12File(new File(SRC_RESOURCES_KEY_P12))
.build();
return credential;
}
AzimoLabs的人们写了一个relevant credential creating code,他们在其中使用此方法检索商店评论。他们还post他们的工具。
您还可以使用JSON密钥类型通过服务帐户授权:
private static Credential authorizeWithServiceAccount() throws IOException {
log.info("Authorizing using Service Account");
try (FileInputStream fileInputStream = new FileInputStream(JSON_PATH)) {
return GoogleCredential.fromStream(fileInputStream, HTTP_TRANSPORT, JSON_FACTORY)
.createScoped(Collections.singleton(AndroidPublisherScopes.ANDROIDPUBLISHER));
}
}
可以找到更详细的说明open-sourced。