iOS的开发必须在MAC OS X系统下进行,这很蛋疼,现在MACBOOK动不动就上千上万大洋,这足够买台配置怪兽了,好吗?然而,我们是可以通过在VMWare中安装MAC OS X进行iOS开发的。对于苹果公司,这种我什么都不熟悉,就要先缴费,而且不便宜的费用的收费模式,我是坚决抵制的。毕竟在这个神奇的国度,连网游都是先上车后补票,好吗?
一、事前准备
首先,VMWare安装出MAC OS X的虚拟机是有条件的。由于OS X除了自己的苹果设备,只能安装在Intel CPU与极小部分AMD CPU的机器上,所以部分AMD CPU可能无法完成苹果系统的虚拟,不过现在基本上都是Intel CPU,也就是I3 I5 I7这种,所以这问题不大。那么我们首先要打开BIOS界面,打开自己CPU的虚拟化技术,一般在Advance设置处,我的在CPU Setup处,不同主板不同,反正将默认的Intel Virtualization Technology的Disabled弄成Enabled,部分还要将Config中的CPU中的[Intel(R) Hyper-Threading Technology] 这2项从默认的Disabled改成Enabled。并且如果可以打开Core Multi-Processing设置的最好也弄成Enabled。放心,这不会伤害硬件的,不要看到要改BIOS就谈虎色变,只是打开原本CPU就有的虚拟化功能而已。Intel CPU基本都能在BIOS打开虚拟化,如果是AMD CPU有相应设置,或者其它型号的CPU在BIOS有这样的设置,也意味着,你能通过VMWare安装出MAC OS X的虚拟机进行iOS的开发。
配置的话,亲测并不需要网上所说的要去到梦幻级别的配置,我拿个i3一代和集显,虚拟一个OS X 10.8配上Xcode4.x进行开发一点卡顿的感觉都没有。
那么,如果你弄好了BIOS就可以下载如下的玩意:
下载并安装好VMWare12,VMware-workstation-full-12.1.0-3272444.exe这东西在某度一搜就好。如果你已经安装好VMware的低版本,建议升级一下。直接在控制面板卸载旧版本的VMware,不用重启,再安装VMWare12一点问题都没有。
其次就是找一个unlocker208,VMWare的MAC OS X系统识别补丁,这东西我已经给大家上传了一份:http://download.csdn.net/detail/yongh701/9823742
下载之后,如图,直接以管理员身份运行win-install.cmd,稍等一会儿,貌似要保持网络畅通,即可完成VMWare对MAC OS X系统的识别。
然后再弄好一个darwiniso.zip并解压,这是VMWare tools for MAC OS X,亲测VMware 12自带那个不好使。我也给大家上传了一份:http://download.csdn.net/detail/yongh701/9823745,这个是darwin6.0.3.iso,这个到时候装好MAC OS X再安装。
最后就是需要一个MAC OS X的镜像,用Mountain Lion 10.8.5,基本上10.8.x或者其它版本都没问题,但版本越高越卡,我觉得这个版本最不错,刚好是iPhone 4s经典机型流行的时候,2012年左右的版本,刚好用来学习。选版本,只是有一点要注意,一定要选用正式版,而不是什么懒人包。反正我弄下来的东西是Install OS X Mountain Lion 10.8.5.dmg。这东西也需要大家自己度娘一下,毕竟4G多,某果官网也不可能有这些古董。
Install OS X Mountain Lion 10.8.5.dmg还不能直接用,还要进行一定的加工,不然VMware无法识别。
建议先用7-zip提取,也就是用大名鼎鼎的7z格式专用加压软件,解压这东西,winrar对此格式并不能胜任。然后建议利用UltraISO绿色版,将解压目录下的..\Install OS X Mountain Lion 10.8.5\Установка OS X Mountain Lion\Install OS X Mountain Lion.app\Contents\SharedSupport中的InstallESD.dmg转成.iso格式,这样以来VMWare就能识别安装了。如图:
二、VMWare安装MAC OS X
上面风风火火弄了一大轮,简直心累,不过就这样间接省下MACBOOK的钱,也是值得的。下面终于开始在VMWare安装MAC OS X了。
新建一个虚拟机,和安装其它虚拟机没什么区别,只是有几个地方需要注意一下。
一上来选择“我稍后安装操作系统”。
之后,由于这是个补了unlocker208的VMWare12,所以我们可以选择MAC OS X系统。版本请根据你下载的MAC OS X的版本选择。
之后选择虚拟机的安装位置,没什么好说的。一般设置其它盘符,因为我最后弄完,足足20G大。自己记住这个位置,一会儿还要进去修改一些设置。
最后还有一个注意一下的,是固件类型,必须是苹果独有的EFI,其余一路默认设置即可。CPU、内存分配根据自己的机器量力而为。不过一般推荐配置就好。
设置好之后在CD挂在刚才我们加工好的InstallESD.iso,先别打开,最好先关闭VMWare 12。
需要到虚拟机的目录,用记事本或者其它的文本编辑软件打开OS X 10.8.vmx,这位置的名称根据你给虚拟机命名不同而不同。之后在.encoding = "GBK"下面添加一行,smc.version = 0。保存退出,再打开刚才弄好的虚拟机。
如果不这样做,VMWare会提示出现不可恢复错误: (vcpu-0)之类的。
现在终于可以打开虚拟机安装这苹果,苹果这东西嘛,就是对用户友好,然后对开发者苛刻,还抽水,非常讨厌。
选择语言这一步没什么好说的。
之后,与其它系统一样,我们需要对磁盘进行格式化,才能安装系统。
选择“磁盘工具”。
之后对默认的42.95G空位置,格式化即可,退出磁盘工具即可。
之后就可以一路直接下一步,等待安装即可,大概半小时左右吧。
安装的时候,会像Linux的时候需要你设置一个root用户名与密码,自己记好了。
安装完毕它这个苹果系统会提示你输入或者注册Apple id,从而在苹果那边绑定你这台设备的。一定要选择跳过,毕竟这是虚拟机。
三、VMWare tools的安装
MAC OS X安装完毕之后就可以关机了,注意,MAC OS X系统的开始菜单就是上面那条东西,和LINUX图形化之后的系统是一样的,因为它是基于UNIX结构的。
然后我们选择挂载准备好的darwin6.0.3.iso,再重新开机,苹果的桌面就会自动出现VMware tools,双击就可以进行安装。
*如果你使用VMWare12自带那个VMWare tools会出现如下图无法找到目的卷宗的情况,也就是类似Windows的找不到本地磁盘、不是有效的Win32程序的情况,提示:你不能在此位置安装“VMware Tools”。“VMware Tools”安装器不允许它的软件被安装在这里。这是因为版本与虚拟系统不兼容的缘故。
之后安装完又可以关机了,设置好VMWare的共享文件夹,并且在Windows里面将这个文件夹共享给Everyone,并赋予读写权限,同时取消挂在刚才加载的darwin6.0.3.iso。重新打开虚拟机。
之后在虚拟机中,设置在桌面显示“共享文件夹”。
四、Xcode的下载、安装
最新版的Xcode你不能说让我安装就安装,你不能加些特效,Duang,就不好了,既然选择安装了MAC OS X 10.8那么就要安装对应版本转为iphone 4/4s写代码的Xcode老版本。首先我们直接打开苹果的官网:https://developer.apple.com/download/more,他会提示你输入apple id的,没有的,我发现是不能自己注册一个的,只能问用苹果的朋友借来下一个,反正只要这里用而已。在搜索框输入Xcode,回车搜索,如图,找到各种版本Xcode。我选择了Xcode4.x的最后一版Xcode4.6.3。
下载完毕就xcode4630916281a.dmg将放到刚才设置好的共享文件夹里面。之后打开虚拟机,如图进行Xcode的安装。
五、iOS的Helloworld
好了,终于到了真正可以写程序的时间,虽然今天我们写的程序将不会有一行代码。
如图我们,先在 /用户/你的用户名 新建一个文件夹,用于存放你以后新建的ios工程,这就是你的工程空间。MAC OS X的文件结构就是和UNIX非常类似的。
之后我们打开刚才安装的Xcode正式可以开始程序的写作:
选择Single View Application
输入一些相应的信息,点击Next,选择刚才新建好的文件夹。
如图,拖一个Label进MainStoryboard.storyboard,设置好相应的属性。
直接运行即可,运行的时候还被提示是否设置成开发者模式,打死都说是,然后又要输入个密码-_-!和Linux系统一个尿性。
最后折腾这么久,真的可以看到效果了:
其实这里已经略窥一二,iOS的开发和C#很像,拖控件,然后对控件写代码什么的,