如何在Xcode 14.3中通过命令行实现Rosetta模拟器构建运行?
在Rosetta模拟器上通过命令行运行iOS应用
一、获取Rosetta模拟器的UDID
先通过命令列出所有可用模拟器,找到标注(Rosetta)的条目并记录其UDID:
xcrun simctl list devices
二、直接通过命令行运行应用
使用arch -x86_64强制以Rosetta架构执行命令,依次完成模拟器启动、应用安装和启动:
# 启动目标Rosetta模拟器 arch -x86_64 xcrun simctl boot <模拟器UDID> # 将.app文件安装到模拟器 arch -x86_64 xcrun simctl install <模拟器UDID> /path/to/your/app.app # 启动应用(替换为你的Bundle ID) arch -x86_64 xcrun simctl launch <模拟器UDID> com.your.app.bundle.id
三、Fastlane中的适配配置
在Fastlane的lane里,指定Rosetta模拟器的UDID和架构参数,示例如下:
lane :rosetta_test do scan( device: "你的Rosetta模拟器名称", udid: "<模拟器UDID>", arch: "x86_64" ) end
也可以直接在lane中执行shell命令:
lane :rosetta_run do sh("arch -x86_64 xcrun simctl boot <模拟器UDID>") sh("arch -x86_64 xcrun simctl install <模拟器UDID> /path/to/your/app.app") sh("arch -x86_64 xcrun simctl launch <模拟器UDID> com.your.app.bundle.id") end
注意事项
- 确保应用编译时兼容x86_64架构,或通过Rosetta模式支持该架构运行
- 检查Xcode命令行工具路径是否正确:
xcode-select -p,需指向当前使用的Xcode版本
内容的提问来源于stack exchange,提问作者kaulex
相关产品推荐
相关产品推荐

