macOS Sierra具有使用大写锁定键切换输入源(键盘布局)的新功能。 (见截图)
当此选项处于活动状态时,我的应用程序在按下大写锁定时崩溃。
除了main
之外,我没有获得任何有意义的堆栈跟踪。仅报告Message from debugger: Terminated due to signal 9
。显然这是一次内存违规。
其他应用中不会发生这种情况。但是当切换输入源时,我在控制台中遇到以下错误:
KIM_Extension Current input mode is nil
我尝试删除并重新添加输入源,但这没有效果。
此外,我必须注意,此问题仅在我将应用转换为Swift 3 后才出现。
是否有人对如何处理大写锁定事件有更深入的了解?有没有办法在将事件发送到应用程序/系统之前对其进行错误检查?
更新 我认为重要的是要提到从菜单栏切换输入源或使用常规键盘快捷键工作正常。所以问题是Caps Lock切换特有的。