macos - 应用因使用全局热键而被拒绝
问题描述
最近几天,我向 Apple 发送了我的应用程序的新版本,以修复 macOS Catalina 的一些小错误。今天晚上,Apple 打电话给我并解释说他们拒绝在 AppStore 中使用新版本,因为该应用程序会监控击键。我使用 Clipy/Magnet 库 (github.com/Clipy/Magnet) 来管理热键。该库使用 Carbon API。诚然,我有点惊讶 - 一方面,Apple 直接通过电话给我打电话,另一方面,到目前为止,使用这个库并没有造成任何问题。关于新版本,我唯一注意到的是 Catalina 在程序第一次启动时要求“输入监控”。我已经安装了其他几个也响应全局热键的程序,它们都不需要“输入监控”的权限。
解决方案
我知道许多使用MASShortcut框架的应用程序,我不相信他们对商店有任何问题。它还使用碳 API,但我认为 Magnet 中的问题是CGEvent.tapCreate
可以全局监控所有键盘输入的调用,而它MASShortcut
不使用。
推荐阅读
- iis - 意外的应用程序池重启 - 在哪里可以找到回收的原因
- mariadb - mariadb dockerhub 容器随机访问被拒绝 root@localhost 错误
- c++ - 将指向结构的指针传递给函数
- http - S-HTTP 和 HTTPS 是一回事吗?
- scala - 切换到 Kotlin 时替换 gradle 中的 ScalaCompile
- python - 计算列表中相同位置的不同值的数量
- javascript - 如何在浏览器中本地使用 javascript type="module"
- haskell - 在 Haskell 中管理事件
- javascript - 从字符串 jquery 中删除特定单词
- powerapps - 无法在两个 Sharepoint 列表之间建立连接以获取名称