前言小记:因为疫情缘故,user study改为远程进行,所以需要Android和iOS两个版本,将APP分别发布到Google Play 和 Apple Store上面。然而现在可供支配的只有一只Android手机(Samsung)、一只iPhone 11和一台Windows系统的笔记本,所以发布到iOS上面考虑用虚拟机进行。(注:安装双系统需谨慎,reboot一时爽,清盘火葬场,别问我怎么知道的...)
Virtualbox
Oracle旗下提供免费的虚拟机——Virtualbox (https://www.virtualbox.org/),成为了我的首选。下面是在virtualbox上面安装macOS可能需要的资源,以及可能遇到的问题及解决方案:
安装教程(包括安装VirtualBox和在VirtualBox上装MacOS Catalina) https://www.professionaltutorial.com/install-macos-catalina-on-virtualbox-windows/
MacOS Catalina镜像下载地址【MacOS Catalina Virtual Image Download Link】https://drive.google.com/file/d/1WyvOqw1HOPyptEnhpwOdBHRu6lg5ek9H/view
下载的镜像一般来说肯定不会是最新版本,可以安装完成后,再在虚拟机的MacOS里进行系统更新。下面是系统更新的步骤:
如何在虚拟机里进行MacOS系统更新 【Update System】 https://techsviewer.com/update-macos-virtualbox-latest-versions/
如果你需要调整虚拟机的屏幕分辨率:
如何调整虚拟机Virtualbox分辨率 【Reset Resolution】 https://www.professionaltutorial.com/fix-macos-catalina-screen-resolution-on-virtualbox/
如果你想给虚拟机挪一挪地方:
更改虚拟机存储路径 【Change the Location of a Virtualbox Disk Image】 https://www.youtube.com/watch?v=qwb-IMdNOHQ
如果用了许久虚拟机存储容量不够,需要扩展硬盘:
扩展硬盘 【Resize Virtualbox Hard-Drive】(这个是针对VMDK file的步骤(比vdi更复杂),其中包含了vdi file需要的步骤 - 按需自取) https://www.youtube.com/watch?v=Ujd72kRMfFM
虚拟机如何连接USB!?设置下面的USB选项-选USB2.0(据说2.0的兼容性比较好)或USB3.0,将你想连到虚拟机的设备先连接到主机Host上面,然后再在USB设备筛选器下面添加相应设备即可。一切如常,顺畅无比,用虚拟机的Xcode部署到iPhone上运行成功!撒花✿✿ヽ(°▽°)ノ✿
然而,故事到此并没有完结!
当iOS升级到13.5.1,再把手机数据线插进去,MacOS Finder下面不显示我的iPhone,手机也不会弹出“是否信任该设备“”!!
寻找问题 倒计时321——发现在我的Host上面是可以识别的,虚拟机也显示识别了设备,MacOS Hardware下面的USB device tree也可以看到iPhone,所以认为是系统版本问题,而非硬件问题。尝试更新了MacOS到最新的Beta版本、尝试了Apple官方给出的常用解决方案(https://support.apple.com/en-us/HT204095)、重新安装MacOS镜像、更新虚拟机,皆不奏效。反反复复两三天,有立刻去下单一个Mac的冲动。
贫穷让我们只能锲而不舍死缠烂打继续胡乱瞎尝试!开始VMware探索之旅。
VMware
VMware也有非商用的免费版本(https://www.vmware.com/products/workstation-player/workstation-player-evaluation.html)
安装教程(包括安装VMware和在VMware上装MacOS Catalina) https://www.youtube.com/watch?v=qiXklLp03z8
下面是该教程里面用到的所有连接:
* Written Guide: https://www.geekrar.com/install-macos-catalina-on-vmware-on-windows-pc-new-method/* Downloads: VMware Workstation & Player Download: https://www.vmware.com/products/workstation-player/workstation-player-evaluation.html
macOS Catalina ISO Image File: https://drive.google.com/drive/folders/1mUPKPG2Iq5qPUovrmSNFiAffqjdYhPzp
Unlocker: https://www.geekrar.com/macos-unlocker-vmware-workstation-player-14-12/
Winrar : https://www.win-rar.com/download.html?&L
7-zip: https://www.7-zip.org/
用VMware USB3.0 去连接iPhone,出现的情况和VirtualBox相同。同样试着连了xiaomi和Samsung,状况也一模一样。但是当插U盘进去,MacOS却可以识别!沿着这个重要线索(抓着这根救命稻草..),终于!!!
解决虚拟机中安装的MacOS系统无法识别ios设备的问题 [solved by following this blog!!!]
还有一些搜索到的其他问题和解决方案,一并列在这里啦:
mac虚拟机不能识别 iphone或u盘 https://blog.csdn.net/u011872945/article/details/38416155
mac下无法识别手机usb问题 https://blog.csdn.net/lowprofile_coding/article/details/48443249
其实最终就是把VMware设置里的USB3.0改成了2.0,解决了兼容性的问题,就识别了设备。我试着重新回头把VirtualBox的USB改成2.0,就完全没有用.. 还是不能明白为啥iOS升了个级,虚拟机的USB就不兼容了。hardware果然不是我这种凡人可以捉摸的。
总之, 感谢以上所有~ 我就做一个搬运工,整理下来,记录这一段迷之坎坷历程,希望也能帮到有需要的人!!(如有侵权,联系删除)