You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Cloud TextToSpeech认证报错求助:凭据缺失等问题

解决Google Cloud TextToSpeech认证问题的实操方案

一、修复"Application Default Credentials are not available"错误

  • 本地开发环境:
    1. 从GCP控制台的IAM服务账号页面,下载对应账号的JSON密钥文件
    2. 设置环境变量指向该文件:
      • Windows终端执行:set GOOGLE_APPLICATION_CREDENTIALS="本地密钥文件的绝对路径"
      • macOS/Linux终端执行:export GOOGLE_APPLICATION_CREDENTIALS="本地密钥文件的绝对路径"
    3. 重启开发工具或终端,让环境变量生效
  • Android设备(真机/模拟器):
    把密钥文件放到项目的assets目录,通过代码显式加载:
    InputStream keyStream = getAssets().open("你的密钥文件名.json");
    GoogleCredentials credentials = GoogleCredentials.fromStream(keyStream);
    TextToSpeechSettings settings = TextToSpeechSettings.newBuilder()
        .setCredentialsProvider(FixedCredentialsProvider.create(credentials))
        .build();
    TextToSpeechClient client = TextToSpeechClient.create(settings);
    

二、处理真机无法解析oauth2.googleapis.com的问题

  • 确认设备网络可正常访问Google服务(避免使用屏蔽Google的网络环境)
  • 检查AndroidManifest.xml中是否添加了网络权限:
    <uses-permission android:name="android.permission.INTERNET" />
    

三、解决storage.buckets.list权限报错

  • 登录GCP控制台,找到对应的服务账号
  • 为该账号添加Cloud Text-to-Speech Admin角色(测试阶段用这个角色足够,生产环境可按需配置更细粒度权限)
  • 移除不必要的storage相关权限(如果你的TextToSpeech场景不需要操作存储桶)
  • 等待1-2分钟让权限同步,再重新运行代码

四、正确操作gcloud auth application-default login

  • 执行该命令后,会自动打开浏览器,选择有权限访问目标GCP项目的Google账号完成登录
  • 登录成功后,凭据会自动保存到本地默认路径,此时本地开发环境可直接使用默认凭据创建客户端
  • 注意:登录的账号必须在目标GCP项目中拥有TextToSpeech的访问权限,否则仍会报错

内容的提问来源于stack exchange,提问作者Ashish Shukla

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 05:45:33