如何从命令行构建Xcode项目?

uyhoqukh  于 2023-08-07  发布在  其他
关注(0)|答案(2)|浏览(128)

我试着阅读苹果提供的Xcode Tools documentation,这样我就可以使用终端构建一个.app文件,并在模拟器上运行生成的应用程序。本质上,我想做的是和Cmd + R在Xcode上做的一样。
到目前为止,我尝试像这样构建.xcodeproj

xcodebuild -configuration Debug build

字符串
然而,当我在模拟器上安装和运行它时,我得到一个黑屏的应用程序:

// Boot device
xcrun simctl boot "iPhone 7" 
// Install app
xcrun simctl install "iPhone 7" "/Users/.../MyApp/build/Debug-iphoneos/MyApp.app"
// Open simulator
open /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app
// Launch app using its bundle id
xcrun simctl launch booted "com.example.apps.MyApp"


更不用说xcrun simctl launch booted "com.example.apps.MyApp"行永远不会终止,在模拟器上它一直试图打开和重新打开应用程序,但应用程序只会显示黑屏。
如果有人能告诉我,我做错了什么建设的.xcodeproj,这将是伟大的!

anauzrmj

anauzrmj1#

在Xcode中完成工作配置后,打开一个shell并导航到<NAME>.xcodeproj所在的目录。
运行后:

xcodebuild -list -project <NAME>.xcodeproj/

字符串
您将看到一个 * 方案 * 的列表。
复制所需的方案名称并运行:

xcodebuild -workspace <WORKSPACE NAME> -scheme <SCHEME NAME> build


您可以安装[ios-deploy][1],即通过:

npm install -g ios-deploy


xcodebuild 输出的末尾复制app路径并运行:

ios-deploy --debug --bundle <APP PATH>


现在,应用程序应在i.e.上启动。连接的设备。[1]:https://github.com/phonegap/ios-deploy

ecbunoof

ecbunoof2#

@Tsunamis的回答很精彩。
另外,如果你的项目有一个包,它使用了一些特定的iOS库,如UIKit,并且你遇到了关于找不到UI控件的错误,你可以使用以下命令行编译这个包:
xcodebuild -scheme <package -sdk "xcrun --sdk iphonesimulator --show-sdk-path" -target x86_64-apple-ios14.0-simulator

相关问题