Xcode 12模拟器运行Widget Extension成功但无对应小组件问题求助
Widget扩展不显示在模拟器小组件列表排查方案
- 检查部署版本匹配
确认Widget Extension的Deployment Target版本 ≤ 你运行的模拟器系统版本,Widget最低支持iOS 14,若模拟器系统低于iOS 14会完全看不到组件入口。 - 检查Bundle ID规则
Widget扩展的Bundle Identifier必须以主App的Bundle ID为前缀,例如主AppID为com.demo.myApp,扩展ID需为com.demo.myApp.widget这类格式,前缀不匹配会导致扩展无法被系统识别。 - 检查签名配置
个人免费开发者账号可正常调试Widget,无需付费。需确认主App和Widget扩展两个target的签名配置都勾选了Automatically manage signing,且选择了同一个开发团队。 - 清除Xcode和模拟器缓存
按以下顺序操作可解决90%的缓存类问题:- 卸载模拟器上的主App
- 打开模拟器顶部菜单
Device > Erase All Content and Settings重置模拟器 - 关闭Xcode后删除
~/Library/Developer/Xcode/DerivedData目录下的对应项目缓存 - 重新打开Xcode运行主App,再运行Widget扩展
- 检查Widget代码配置
确认自动生成的Widget代码有@main标记,且supportedFamilies配置未被误修改,默认配置会覆盖全部小组件尺寸。 - 手动刷新小组件列表
Xcode提示扩展运行成功后,返回模拟器主屏幕,长按进入编辑模式,点击左上角+号后等待5-10秒,Xcode12.5版本存在列表加载延迟的已知问题,不要立刻关闭添加面板。
你提供的运行截图如下:
内容的提问来源于stack exchange,提问作者Kevin T.
相关产品推荐
相关产品推荐


