Visual Studio(Xamarin)使用Google Play签名报invalid_client错误如何解决
问题根源
你出现该问题的核心原因是创建OAuth客户端ID时选错了应用类型:Visual Studio调用Google Play签名接口需要的是桌面应用类型的OAuth 2.0凭证,你之前创建的是适配Android应用的客户端ID,该类型的凭证天然不存在client_secret字段,用于桌面端API请求时就会触发invalid_client授权错误。此前ad-hoc分发仅需要上传本地签名后的AAB文件,不需要调用Google Play的API接口,所以不受凭证类型影响。
解决步骤
- 重新创建正确的OAuth凭证:进入Google Cloud Console对应项目的「API和服务→凭据」页面,点击创建凭据→OAuth客户端ID,应用类型选择桌面应用,自定义名称后确认创建,新生成的凭证会同时包含客户端ID和client_secret,下载的JSON文件中也存在对应字段。
- 启用必要API权限:在Google Cloud Console的「API和服务→启用API和服务」页面,搜索
Google Play Android Developer API,确认该API处于启用状态,未启用则手动开启。 - 确认Play Console关联配置:打开Google Play Console,进入「设置→API访问」页面,确认当前使用的Google Cloud项目已和Play Console完成关联,同时操作账号拥有应用发布者及以上权限。
- 更新Visual Studio配置:将新生成的桌面应用客户端ID、client_secret填入Visual Studio的Google Play签名配置栏,重新触发签名流程,首次操作会弹出浏览器授权页面,使用对应开发者账号完成授权即可。
- 异常排查:如果配置后仍报错,可删除Visual Studio缓存的Google账号凭证,路径为
%LOCALAPPDATA%\Microsoft\VisualStudio\<你的VS版本号>\ServiceBroker\GoogleAccounts,清理后重新发起授权即可。
内容的提问来源于stack exchange,提问作者roguedev
相关产品推荐
相关产品推荐

