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

求助:Kivy应用在Xcode中加载模块失败(ImportError)

Kivy iOS 模块加载错误(PyInit_kivy__event/PyInit__event)解决方案

这个错误是Kivy的C扩展模块在iOS打包过程中未正确编译或链接导致的,以下是针对性解决步骤:

  • 清理kivy-ios编译缓存并重建核心库

    • 进入kivy-ios目录执行清理命令:
      cd kivy-ios && rm -rf build dist
      
    • 重新编译Kivy核心模块:
      ./toolchain.py build kivy
      
  • 对齐Python版本并重建项目

    • 确保本地开发环境Python版本与打包使用版本一致(日志显示为Python 3.11.6),避免跨版本编译冲突
    • 基于最新编译环境重新创建iOS项目:
      ./toolchain.py create "YourAppName" /path/to/your/main.py
      
  • 替换imp模块为importlib

    • 项目中若有用到imp模块的代码,全部替换为importlib(Python 3.12+已弃用imp,打包脚本可能因该警告触发加载异常)
    • 示例替换逻辑:
      # 原imp加载代码
      import imp
      module = imp.load_source('module_name', '/path/to/module.py')
      
      # 替换为importlib写法
      import importlib.util
      spec = importlib.util.spec_from_file_location('module_name', '/path/to/module.py')
      module = importlib.util.module_from_spec(spec)
      spec.loader.exec_module(module)
      
  • 清理模拟器缓存并重新打包

    • 重新打包应用:
      ./toolchain.py ios build
      
    • 在Xcode中删除模拟器上的旧应用,清理Derived Data(路径:Xcode → 设置 → 位置 → Derived Data,删除对应项目文件夹)
    • 重新运行模拟器测试应用

内容的提问来源于stack exchange,提问作者Sean Aldous

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 20:23:12