如果你已经成功安装黑苹果,并进入了系统,恭喜你,已经完成了第一步。
如果你还没有安装黑苹果,打算尝试,那么可以推荐你看看这个教程:
虽然成功进入了系统,但你可能会发现怎么分辨率不是最大?扬声器也无法发出声音, 连将U盘插上USB3.0口都没法正常识别。
本文就先来谈谈如何解决USB端口相关问题如何解决的问题。
第一步:挂载EFI分区,安装USBInjectAll.kext
sudo mkdir /Volumes/EFI
sudo mount -t msdos /dev/disk0s1 /Volumes/EFI
其中,disk0s1是EFI分区的编号,可以在Disk Utility中查看。
也可以直接通过Clover Configurator工具来挂载:
-
从文中给出的链接中下载安装并打开Clover Configurator
-
挂载好EFI分区后,就需要将USBInjectAll.kext 复制到EFI/CLOVER/kexts/Other中,如果已存在了,就不用替换。
接下来,还需要通过Clover打补丁, 解除USB端口限制
-
在资源管理器中 进入EFI/Clover文件夹,通过Clover Configurator打开config.plist
-
在内核和驱动补丁中确保有如如图项目,通过上面提到的链接安装成功的黑苹果,这些补丁都是集成了,就不必担心这个了。
这步就通过headkaze大神开发的工具Hackintool 可以快速的实现。
安装并运行hackintool 在上方菜单栏中选择USB
图中绿色部分,就是识别到的主板上已有的USB端口。
例外,如果你的主板是属于以下的情况,除了需要USBInjectAll.kext外,还需要对应的kext放在others文件夹。
-
8086:8CB1
并且 macOS版本低于 10.11.1 -> XHCI-9-series.kext
-
8086:8D31, 8086:A2AF, 8086:A36D, 8086:9DED
-> XHCI-unsupported.kext
-
8086:1E31, 8086:8C31, 8086:8CB1, 8086:8D31, 8086:9C31, 8086:9CB1
-> FakePCIID.kext + FakePCIID_XHCIMux.kext
接下来,我们就需要一个USB2.0的盘,来测试每个需要配置和保留的USB接口。
如果插入的是2.0的设备,就是使用的HS**开头的编号, 如果插入的是3.0设备那么就是SS**开头。比如上图中HS01/SS01就是指定的一个物理上的USB3.0端口。
在上一步中,用简单的方式来确定端口号, 接下来,就需要用一种方式来验证是否正确。
选择列出来的所有USB接口,选择删除后,点击刷新按钮。
接下来重新挂载EFI分区(因为重启后先前挂载就失效),在EFI/Clover文件夹下找到config.plist,并使用Clover Configurator打开。
切换到启动参数页面, 点击 “+”按钮,然后添加如下两行启动参数:
-uia_exclude_ss
uia_include=HS05,HS06
需要注意的是,05,06编号是小编测试的这台主机的鼠标以及键盘所连接的端口,
会有所不一样,可以在hackintool中查看实际使用的是哪两个。
重启后,再次打开HackinTool,切换到USB菜单, 接下来就需要用一个USB2.0设备插入所有的USB端口(没有的话,鼠标也行),接下来删除所有未绿色高亮的行。
删除完成后,按照上面的方式重新挂载EFI分区,并打开config.plist.
将-uia_exclude_ss 替换成-uia_exclude_hs后再次重启电脑。
重启后,还是按照上面的步骤,不过这次是把USB2.0设备换成一个USB3.0的U盘。
如果有type C的接口,就还需要一个type-C接口的U盘(正反面都需要插入测试)。
通常情况下,USB的连接器通常都不一定是正确的, 比如小编这台电脑的HS14接口是内接了一个无线蓝牙适配器,这个通常是不需要拔插的,这里我们就可以手动将其识别成的USB.3.0 改为 Internal,表示是一个内部接口。
同样,type-c 接口被识别成了USB3.0, 同样需要将其改为 type-c , 如果尝试正反面都是同一个HS/SS的话,那么就改成type-c sw
这4个文件并不是必需的,有两种使用方式,任选一种就行。
一种是 USBPorts.kext + SSDT-EC.aml
- 将USBProts.kext 放入到 EFI/Clover/Kext/Others 文件夹下。
- 以及 SSDT-EC.aml 放入 EFI/ACPI/patched 文件夹下。
另一种是将三个aml文件都放入EFI/ACPI/patched 文件夹下。
这下,就不用担心USB3.0识别不了, 如果你要开发软件的话,安卓手机的USB调试功能也就可以正常使用了。