Google api 将多个项目id连接到Google Play开发者控制台

Google api 将多个项目id连接到Google Play开发者控制台,google-api,google-play-services,Google Api,Google Play Services,当我尝试执行对Google开发者API的请求时。购买()。产品()。get()我收到一个403错误:projectNotLinked 消息告诉我“用于调用Google Play开发者API的项目id尚未在Google Play开发者控制台中链接。” 此时,我可以转到控制台,取消链接以前的项目,然后链接这个项目,运行代码,代码就可以工作了 但是,我无法永久取消链接上一个项目:我需要将它们保持链接。我如何解决这个问题 我环顾四周,找不到解决办法。我试着打电话给谷歌,他们告诉我他们不支持这种请求 提前

当我尝试执行对Google开发者API的请求时。购买()。产品()。get()我收到一个403错误:projectNotLinked

消息告诉我“用于调用Google Play开发者API的项目id尚未在Google Play开发者控制台中链接。”

此时,我可以转到控制台,取消链接以前的项目,然后链接这个项目,运行代码,代码就可以工作了

但是,我无法永久取消链接上一个项目:我需要将它们保持链接。我如何解决这个问题

我环顾四周,找不到解决办法。我试着打电话给谷歌,他们告诉我他们不支持这种请求


提前感谢。

Andy的评论是正确的,我发现Google Play开发者控制台中的描述链接项目充其量令人困惑

但是,我在Google开发者控制台中设置了一个公司项目,其中包含适当的服务器密钥和服务帐户。这并不理想,但很管用。然后,您可以在Google Play开发者控制台中为所需的服务帐户分配权限

您还可以只设置一个密钥和服务帐户,如果这使它更简单的话,并使用它们,如下面在PHP中为服务器所示

$service_account_name = 'xxxxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com';
$key_file_location = somedir/keyfile.p12;

$client = new Google_Client();
$client->setApplicationName("GoogleDevelopersConsoleProjectName");
$service = new Google_Service_AndroidPublisher($client);

$key = file_get_contents($key_file_location);
$cred = new Google_Auth_AssertionCredentials(
    $service_account_name,
    array('https://www.googleapis.com/auth/androidpublisher'),
    $key
);

$client->setAssertionCredentials($cred);

if($client->getAuth()->isAccessTokenExpired()) {
  $client->getAuth()->refreshTokenWithAssertion($cred);
}  

$apiKey = "GoogleDevelopersConsoleServerKey";
$client->setDeveloperKey($apiKey);

$package_name = "com.yourcompany.yourappname1";
然后,对于另一个应用程序,您只需更改$package\u名称

$package_name = "com.yourcompany.yourappname2";
然后使用Google服务AndroidPublisher查询订阅

$service = new Google_Service_AndroidPublisher($client);

$results = $service->purchases_subscriptions->get($package_name,$subscriptionId,$token,array());

您还可以开始分配多个密钥、服务帐户和其他凭据,以便在Google Play开发者控制台中添加其他项目。

再次强调@andy的评论:只能有一个链接的API项目

我花了很长时间才弄明白这一点。谷歌的文档在这里没有帮助


如果您需要访问多个项目/应用程序,则必须在单个链接的API项目内创建多个服务帐户,并分别管理对应用程序的访问。

一次只能将一个项目链接到Play Developer控制台。您可以尝试将您的凭据移动到一个项目中,以便所有内容都包含在单个项目中。您能否解释如何“在单个链接的API项目中创建多个服务帐户,并分别管理对应用程序的访问”?