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

如何为KivyMD应用设置自定义启动屏并解决APK崩溃问题

解决方案:KivyMD 自定义启动屏(避免APK打包崩溃)

方法一:Buildozer原生启动屏配置(推荐,无崩溃风险)

这种方式直接通过Buildozer配置实现,无需在Kivy代码中编写启动屏逻辑,打包后稳定性更高。

  • 准备启动屏素材:
    • 制作一张红色背景+居中公司Logo的图片,命名为splash.png,尺寸建议至少1080x1920以适配多数设备,格式为PNG/JPG,放在项目根目录。
  • 修改buildozer.spec配置:
    找到对应配置项,修改或添加如下内容:
    # 启动屏基础设置
    android.splash_screen = splash.png
    android.splash_screen_duration = 3000  # 显示时长,单位毫秒
    # 若图片未包含红色背景,可单独设置背景色
    # android.splash_screen_color = #FF0000
    

方法二:KivyMD代码实现启动屏(适配打包)

若必须通过代码实现,需遵循打包兼容逻辑,避免崩溃:

main.py 代码

from kivy.lang import Builder
from kivymd.app import MDApp
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.clock import Clock

class SplashScreen(Screen):
    def on_enter(self, *args):
        # 延迟跳转到主界面,模拟启动屏展示时长
        Clock.schedule_once(self.switch_to_main, 3)

    def switch_to_main(self, dt):
        self.manager.current = "main"

class MainScreen(Screen):
    pass

class MyApp(MDApp):
    def build(self):
        sm = ScreenManager()
        sm.add_widget(SplashScreen(name="splash"))
        sm.add_widget(MainScreen(name="main"))
        return sm

if __name__ == "__main__":
    MyApp().run()

design.kv 代码

<SplashScreen>:
    canvas:
        Color:
            rgb: 1, 0, 0  # 红色背景
        Rectangle:
            pos: self.pos
            size: self.size
    Image:
        source: "logo.png"  # 公司Logo路径,需放在项目根目录
        size_hint: None, None
        size: 200, 200  # 自定义Logo尺寸
        pos_hint: {"center_x": 0.5, "center_y": 0.5}

<MainScreen>:
    MDLabel:
        text: "主界面"
        halign: "center"

打包关键注意事项

  1. 在buildozer.spec中补充依赖与资源配置:
    requirements = python3,kivy==2.1.0,kivymd==1.1.1
    android.add_assets = logo.png  # 代码方式需将Logo加入打包资源
    
  2. Colab打包前清理旧缓存:
    buildozer android clean
    
    再执行打包命令:
    buildozer android debug deploy run
    

崩溃排查要点

  • 确认图片路径正确,且已加入打包资源列表
  • 启动屏中禁止执行耗时操作(如网络请求),避免触发ANR崩溃
  • 确保Kivy与KivyMD版本兼容,优先使用稳定版

内容的提问来源于stack exchange,提问作者Harsh Kukadiya

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 13:32:18