1.准备工作
VMware14
os 10.13 HSierra.cdr
vmware_unlocker (用于使VMware显示出mac操作系统选项)
2.安装黑苹果
安装VMware,基本是直接下一步就好了,但是在装好后创建虚拟机会发现并没有mac系统的选项。
此时我们需要停止所有的VM服务,然后用unlocker进行破解,使用管理员身份运行win-install.cmd这个文件即可,完成之后重启VMware再去创建新的虚拟机就会出现MacOS的选项了。
以上搞定之后,我们就可以创建一台MacOS系统的虚拟机了,具体步骤直接看下面截图。
此处注意:磁盘大小和自定硬件可根据自身需求进行调整,我这里都是采用的默认.
创建好虚拟机之后,我们开启虚拟机时会报以下错误:
这个错误网上有很好几种解决方案,我这里采用个人觉得最简单的一种进行处理,修改.vmx文件,增加smc.version = 0的配置,此处有些人加了引号,我这里测试的时候没加引号也行,所以我没加。配置好之后再重新开启虚拟机就会进入os系统的安装界面了,操作系统的安装我这里就不讨论了,不会的可以自行百度、Google。(需要注意的是在选择安装磁盘的时候需要先使用磁盘工具格式化)系统装好后,选择菜单虚拟机->安装tools,这样能有更好的使用体验。最后再去把之前我们之前停止的VM服务都启用,这样黑苹果也就可以上网了。
接下来还需要做的就是登陆AppStore把系统更新到最新版本,然后下载最新xcode。(如果不更新系统,在商店是下载不了最新xcode的)
3.配置cordova环境
terminal执行以下命令安装homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装brew之后,执行可执行以下命令安装npm
brew install node/npm -g
安装cordova,执行以下命令
npm install cordova -g
最新版本
npm install cordova@7.1.0 -g
指定某个版本
安装为cordova自动调整图标大小的工具
brew install imagemagick
npm install cordova-icon -g
之后在根目录创建res目录,如下:
附上iOS部分config.xml配置
<?xml version='1.0' encoding='utf-8'?>
<widget android-versionCode="xxxxxx" id="xxxxx.xxxx.xxxxx" version="1.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>xxxxx</name>
<icon src="res/icon/icon.png" />
<content src="index.html" />
<access origin="*" />
<allow-navigation href="*" />
<meta content="default-src *" http-equiv="Content-Security-Policy" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="ios">
<hook src="hooks/xxxxx" type="after_prepare" />
<preference name="AllowInlineMediaPlayback" value="true" />
<preference name="MediaPlaybackAllowsAirPlay" value="false" />
<preference name="Suppresses3DTouchGesture" value="true" />
<preference name="SuppressesLongPressGesture" value="true" />
<preference name="deployment-target" value="9.0" />
<preference name="ErrorUrl" value="error.html" />
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
<splash src="res/screen/ios/Default@2x~universal~anyany.png" />
<config-file parent="name" target="*-Info.plist">
<string>value</string>
</config-file>
</platform>
<preference name="StatusBarStyle" value="default" />
<preference name="Fullscreen" value="true" />
<preference name="BackgroundColor" value="00000000" />
<preference name="DisallowOverscroll" value="true" />
<preference name="Orientation" value="landscape" />
<preference name="AppendUserAgent" value="LobbyClient/0.1.0" />
<preference name="SplashScreenDelay" value="0" />
<engine name="ios" spec="~4.5.5" />
</widget>
在hooks里面创建无格式文件test,并设置为unix的可执行文件
touch test
chmod u+x ./hooks/test
并编辑此可执行文件,保存退出,到此环境也就基本搭建完成了。
剩下的就只需要添加ios平台和会用到的插件,可以直接写成一个shell脚本运行即可
以上为个人学习,避免遗忘所记录,仅供参考!(另下载如有人需要可留言)