夜幕之后 2020-05-08 16:03 采纳率: 66.7%
浏览 347

kivy打包成apk后无法连接数据库

第一次使用使用kivy编写Android软件,在虚拟机和真机上都可以运行,可以访问云数据库
但是打包成apk后无法软件会闪退,使用排除法一点一点发现错误,只要写了
import MySQLdb
就会导致安装apk后闪退,没有写这句就没有问题
下面是简单的测试例子,只要删除掉import MySQLdb就可以在手机上正常打开

import kivy
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput
from kivy.uix.button import Button
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.lang import Builder
from kivy.uix.recyclegridlayout import RecycleGridLayout
from kivy.uix.floatlayout import FloatLayout
import MySQLdb
kivy.require("1.10.1")


Builder.load_string('''
<CourierIndexPage>
    FloatLayout:
        color: 1, 0, 0, 1

        Label:
            text: 'Sunny Courier'
            size_hint: None, None
            size:150, 50
            pos:10, 500
        Button:
            text: 'Select All'
            size_hint: None, None
            size: 150, 50
            pos:160, 500
        Label:
            text: 'Input OrderID'
            size_hint: None, None
            size: 150, 50
            pos: 10, 300
        TextInput:
            id:order_id_input
            text: '2020042001'
            font_name:'DroidSansFallback'
            size_hint: None, None
            size: 200, 50
            pos: 160, 300
        Button:
            text: 'Select'
            size_hint: None, None
            size: 100, 50
            pos: 10, 100
        Label:
            id: adr
            text: 'RealtimeInformation'
            size_hint: None, None
            size: 200, 50
            pos: 120, 100
        Button:
            text: 'Quit'
            size_hint: None, None
            size: 100, 50
            pos: 160, 10
''')


class CourierIndexPage(FloatLayout):
    pass

class Activity(App):
    def build(self):
        self.screen_manager = ScreenManager()

        self.courier_index_page = CourierIndexPage()
        screen = Screen(name="CourierIndex")
        screen.add_widget(self.courier_index_page)
        self.screen_manager.add_widget(screen)

        return self.screen_manager

if __name__ == "__main__":
    sto = Activity()
    sto.run()

  • 写回答

1条回答 默认 最新

  • fxlmop 2020-09-23 15:11
    关注

    你在配置文件里面,引用了第三方库了吗?

    评论

报告相同问题?

悬赏问题

  • ¥15 VS2022 C++的相关代码问题咨询
  • ¥15 如果要做一个老年人平板有哪些需求
  • ¥15 k8s生产配置推荐配置及部署方案
  • ¥15 matlab提取运动物体的坐标
  • ¥15 人大金仓下载,有人知道怎么解决吗
  • ¥15 一个小问题,本人刚入门,哪位可以help
  • ¥30 python安卓开发
  • ¥15 使用R语言GD包一直不出结果
  • ¥15 计算机微处理器与接口技术相关问题,求解答图片的这个问题,有多少个端口,端口地址和解答问题的方法和思路,不要AI作答
  • ¥15 如何根据一个截图编写对应的HTML代码