android的python在开始时崩溃:模块化'google_speech'和'gtts'丢失

问题描述

我用kivy和google_speech编写了一个名为chinese_speaker的python3应用。用buildozer编译后,我将其复制到了智能手机。每当我尝试启动时,它总是立即关闭。因此我启动了adb调试,并在日志文件中找到了以下几行:

09-22 13:29:50.971 13746 13789 I python  :    File "/home/[user_name]/Documents/Python/Buildozer/chinese_speaker/.buildozer/android/app/main.py",line 10,in <module>
09-22 13:29:50.971 13746 13789 I python  :  ModuleNotFoundError: No module named 'google_speech'
09-22 13:29:50.971 13746 13789 I python  : Python for android ended.

我在智能手机上进行了检查,但似乎已安装google_speech:

$ /run/user/1000/gvfs/mtp:host=SAMSUNG_SAMSUNG_Android_R58N146M9KX$ pip3 install google_speech
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: google_speech in /home/[user_name]/.local/lib/python3.8/site-packages (1.1.0)
Requirement already satisfied: appdirs>=1.4.0 in /usr/local/lib/python3.8/dist-packages (from google_speech) (1.4.4)
Requirement already satisfied: requests>=2.6.0 in /usr/lib/python3/dist-packages (from google_speech) (2.22.0)
Requirement already satisfied: web-cache>=1.1.0 in /home/[user_name]/.local/lib/python3.8/site-packages (from google_speech) (1.1.0)

如何将我的应用程序与google_speech库连接?

非常感谢您!

(这是我在Stackoverflow上的第一篇文章。如果缺乏信息,请原谅。

编辑

我在没有google_speech库的情况下尝试了相同的应用程序,并且运行良好。但是,如果我将gts替换为google_speech,则会收到相同的错误:

09-23 10:47:38.774  5914  5984 I python  :    File "/home/[user_name]/Documents/Python/Buildozer/chinese_speaker/.buildozer/android/app/main.py",line 11,in <module>
09-23 10:47:38.774  5914  5984 I python  :  ModuleNotFoundError: No module named 'gtts'
09-23 10:47:38.774  5914  5984 I python  : Python for android ended.

我是否必须在android上启用这种库,还是必须在buildozer.spec中指定它??

解决方法

据我了解,问题在于GTTS和google_speech在Android上无法正常工作。

为此,您可以使用plyer。但是使用plyer时,您只能使用android设备的默认“文本到语音”语言。因此,要说中文,您必须在智能手机上将默认文本更改为语音语言。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...