Buildozer竖屏设置失效求助(Google Colab构建Kivy应用)
Kivy应用在Colab构建后竖屏锁定失效的解决方案
问题根源
近期Colab的buildozer依赖环境(如python-for-android版本)更新,导致原有的竖屏配置逻辑被覆盖,进而出现orientation设置失效的情况。
修复步骤
完善buildozer.spec配置
在配置文件中添加以下内容,强制锁定竖屏并获取对应权限:android:orientation = portrait android:android.permissions = android.permission.SCREEN_ORIENTATION_PORTRAIT android:android.add_activity_launch_mode = singleTop注意要覆盖原有相关配置项,避免冲突。
规范Kivy代码中的配置位置
如果在代码中设置竖屏,必须将配置代码放在App类导入和初始化之前:from kivy.config import Config Config.set('graphics', 'orientation', 'portrait') Config.set('graphics', 'resizable', False) # 之后再导入并定义App类 from kivy.app import App class CalculatorApp(App): # 应用逻辑代码指定稳定的python-for-android版本
新版本的python-for-android可能存在兼容性问题,在buildozer.spec中指定稳定版本:p4a.version = 2023.07.02清理Colab缓存后重新构建
执行命令清理旧缓存,避免残留配置影响构建结果:!rm -rf .buildozer/ !buildozer android debug
近期Colab构建竖屏应用的情况
目前已有开发者通过上述调整成功在Colab构建出锁定竖屏的Kivy应用,核心是确保配置覆盖系统默认旋转规则,同时使用稳定的依赖版本。
内容的提问来源于stack exchange,提问作者Peter Fernandez
相关产品推荐
相关产品推荐

