我最近加入了一个团队,正在将Android Management API添加到已经存在的项目中。我添加了管理API,创建了具有权限的服务帐户,并正在编写.NET项目来测试它。
我创建了一个具有Android管理用户和所有者权限的服务帐户。但是,当我尝试使用.NET库创建企业时,我得到了
服务androidmanagement引发异常。HttpStatusCode被禁止。调用方无权管理项目。
如果有帮助:我使用的API密钥可以调用任何API,应用名称是临时名称,与项目名称不匹配。至于使用私钥的服务帐户,我使用FileStream读取创建服务帐户时下载的.json文件。
这是我的代码,基于示例应用程序https://developers.google.com/android/management/sample-appcreateRequst.Execute()
上抛出错误
string CreateEnterprise()
{
SignupUrlsResource.CreateRequest signupUrlRequest = managementService.SignupUrls.Create();
signupUrlRequest.ProjectId = cloud_project_id;
signupUrlRequest.CallbackUrl = "https://www.yahoo.com";
var signupUrl = signupUrlRequest.Execute();
string enterpriseToken = signupUrl.Url;
Console.WriteLine("Signup: " + enterpriseToken);
EnterprisesResource.CreateRequest createRequest = managementService.Enterprises.Create(new Enterprise());
createRequest.ProjectId = "Test Project";
createRequest.SignupUrlName = signupUrl.Name;
createRequest.EnterpriseToken = enterpriseToken;
var enterprise = createRequest.Execute();
return enterprise.Name;
}
1条答案
按热度按时间vq8itlhq1#
原来
createRequest.ProjectId
必须匹配具有Android管理API的项目名称,也就是我正在使用的项目。