最近要排查聊天系统语音功能无法用的bug;项目源码中用的是unity官方的microphone类,
发现在PC上会出现 microphone.devices返回字符串为空串这个bug,后来上网百度了白天也找不到头绪,后来魔法上网在Google的unity英文论坛找到了解答。为了以后遇到同样情况能够迅速解决,总结一些注意事项。
先上官网API说明Unity.Microphone
官网给出了使用教程,好了,来结论:
一、如果是在PC上:
(1)microphone.devices 为空 :请检查是否有外接麦克风设备,这个可以在右下角音量按钮出-->右键-->录音设备-->查看是否有麦克风设备或麦克风设备是否正常工作。
(2)microphone.devices不为空,但是其名字为空串,举个例子:
foreach (string device in Microphone.devices) {
Debug.Log("Name: " + device);
}
上面代码中拿到的device可能是"",也就是所谓的空串,这种情况是 应该unity自身的问题。我之前就有听说过unity对中文不友好&#x