首页 > 解决方案 > Android TTS 为离线语音返回“超出配额”

问题描述

我在我的应用程序中使用 Google TextToSpeech 很长时间了,我的许多用户都在使用离线语音,所以我对使用的资源数量没有任何问题。但是在收到 GoogleTTS 的最新更新后,我的所有用户都收到以下错误

03-13 14:42:29.298 29525-29571/? E/TTS.NetworkSynthesizer: ExecutionException during NetworkFetchTask
    java.util.concurrent.ExecutionException: clx: RESOURCE_EXHAUSTED: Quota exceeded for quota metric 's3-sessions' and limit 's3-session-limit' of service 'speechs3proto2-pa.googleapis.com' for consumer 'project_number:...'.

google 是否一直在为离线 tts 添加新的限制,或者是某些更改使我的应用程序使用了 google tts 的在线版本?无论如何,如果有人能指导我解决这个问题,我将不胜感激。

标签: androidgoogle-text-to-speech

解决方案


好吧,我想出了问题所在,它与安卓的最新更新无关,但主要与美国对伊朗制裁的最新更新有关。如果您尝试使用来自伊朗的 Google TTS,您应该知道您无法再从伊朗 IP 地址下载语音。

以下方法可以解决问题:

  1. 指导用户安装工作代理(困难但更安全)
  2. 使用像 shecan.ir 这样的政府解决方案来绕过制裁(更容易但不那么安全)

推荐阅读