1.ios下的cordova编译依赖xcodebuild,需要先安装xcode.
2.xcode安装成功后,会自带一个模拟器。
3.sudo cordova build ios //编译一个ios的app,默认是debug类型的模拟器平台跑的app.
sudo cordova build ios -device //编译一个设备平台的app,这需要一个开发者签名,最好是配置到build.json文件里,并把签名文件放到合适的文件里参考 https://blog.csdn.net/fxp850899969/article/details/52780891。
如果没有开发者账号,那就不能直接用cordova命令打包了,可以通过xcode自动生成的签名并真机调试。
步骤如下:
Xcode -> Preferences… ->Accounts
左下角的“+” -> Add Apple ID -> 输入自己的Apple ID 和密码
在所要打包的项目根目录,选择tegart->signing->
选择team.
3.sudo cordova emlate ios,会打开模拟器,然后把应用安装到模拟器上。
4.cordova run ios默认会跑真机,如果没有连接真机,会跑模拟器。
编译和安装app其实可以不用xcode参与,只是用到了xcode下的xcodebuild。
如果要部署到真机,就是要使用ios-deploy,我是怎么安装都安装成功,下面的命令也不行:
sudo npm install -g ios-deploy --unsafe-perm=true --allow-root
没有办法,我只能本地安装:
1.从github上下载源码,下载后copy到npm包的默认安装目录/usr/local/lib/node_modules/下面(主要是方便以后维护)
2.在ios-deploy根目录执行xcodebuild,生成ios-deploy可执行文件。
3.把上一部编译好的目标文件(ios-deploy下的build/Release/ios-deploy)建立一个软链接到usr/local/bin/ios-deploy,这一步的目的是让ios-deploy可以全局使用。