Kivy android 应用程序在打开时立即崩溃

Kivy android app crashes instantly when opened

我正在尝试开发一个使用 google 翻译的 API 的简单应用程序。该应用程序可以正确构建和安装,但是当我在 phone 上打开该应用程序时,它只是崩溃,没有任何错误消息。

这是我的main.py文件:

import kivy
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.core.window import Window
from kivy.graphics import Color, Rectangle

from googletrans import Translator

Window.clearcolor = (0.2, 0.2, 0.2, 1)
Window.size = (450, 800)

tr = Translator()

# class in which we are defining action on click
class RootWidget(BoxLayout):

    def translate(self, text, src, dest):
        print(text, src, dest)
        if text != "":
            self.output_text.text = tr.translate(text, src=src, dest=dest).text
    def speak(self):
        print('speaking')
    def read(self):
        print('reading')

class TranslatorApp(App):

    def build(self):
        return RootWidget()

myApp = TranslatorApp()

myApp.run()

这是我的translator.kv文件:

<RootWidget>:

    input_text:input_text
    output_text:output_text
    src_lang:src_lang
    dest_lang:dest_lang

    BoxLayout:
        orientation: 'vertical'
        spacing: 5
        padding: 5

        BoxLayout:
            orientation: 'horizontal'
            spacing: 5
            size_hint: [1, 0.1]

            Label:
                text: 'Texto a traducir'
                halign: 'left'

            Label:
                text: 'Texto traducido'
                halign: 'left'

        BoxLayout:
            orientation: 'horizontal'
            spacing: 5
            size_hint: [1, 0.9]

            TextInput:
                id: input_text
                color: [180, 180, 180]
                size_hint: [0.5, 1]
            TextInput:
                id: output_text
                text: "s"
                color: [180, 180, 180]
                size_hint: [0.5, 1]

        BoxLayout:
            orientation: 'horizontal'
            spacing: 5
            size_hint: [1, 0.2]

            Button:
                text: 'Hablar'
                color: [0, 255, 255, .67]
                background_normal: ''
                background_color: [0, 0.5, 1, .85]
                on_press: root.speak()
                size_hint: [0.5, 1]

            Button:
                text:'Traducir'
                color: [0, 255, 255, .67]
                background_normal: ''
                background_color: [1, 1, 1, 0.7]
                on_press: root.translate(input_text.text, src_lang.text, dest_lang.text)
                size_hint: [0.5, 1]

            BoxLayout:
                orientation: 'vertical'
                spacing: 5

                BoxLayout:
                    orientation: 'horizontal'
                    spacing: 5

                    Label:
                        text: 'Idioma de\norigen'
                        halign: 'left'

                    Label:
                        text: 'Idioma de\ndestino'
                        halign: 'left'

                BoxLayout:
                    orientation: 'horizontal'
                    spacing: 5

                    TextInput:
                        id: src_lang
                        text: 'es'

                    TextInput:
                        id: dest_lang
                        text: 'en'

                Button:
                    text: 'Leer traducción'
                    on_press: root.read()

我 运行 命令 buildozer android debug 构建应用程序。 我知道新的 p4a 工具链有 android_new,但是当我尝试这样做时,我收到如下错误消息:

Unknown command/target android_new

我会添加 buildozer.spec 文件,但 Whosebug 认为它是垃圾邮件

我觉得自己的问题很蠢。

我已将 googletrans 添加到规范文件中,所以我认为这不是问题所在。在我解决问题的一次尝试中,我更新了模块,我看到 googletrans 有一些依赖项,我需要做的就是将这些依赖项也添加到需求中