Fab*_*ser 18 macos cocoa background sandbox appstore-sandbox
我有这个应用程序,我需要从我的应用程序中激活其他应用程序的菜单项(如打印cmd + p).现在我正在使用CGEventPostToPSN()来完成这项工作并且工作正常,但是当我激活沙盒时,它会停止工作.
CGEventPostToPSN(&psn, keyDownEvent);
CFRelease(keyDownEvent);
CGEventPostToPSN(&psn, keyUpEvent);
CFRelease(keyUpEvent);
Run Code Online (Sandbox Code Playgroud)
我现在的问题是,当我需要启用沙盒时,我该怎么办?我听说过很多关于Accessibility API的内容,但我无法了解如何激活其他应用程序的菜单项.我很感谢你对这个问题的任何答案.
法比安
我仍然没有这个问题的最终答案,但似乎可以使用 @nielsbot 建议的 Accessibility API。
有一些有前景的函数,例如AXUIElementPostKeyboardEvent()和AXUIElementPerformAction()。问题:Apple 的沙盒指南禁止使用 Accessibility API 控制其他应用程序。
注意:使用应用程序沙箱,您可以而且应该启用应用程序的可访问性,如本文档中所述。但是,您不能对屏幕阅读器等辅助应用程序进行沙箱操作,也不能对控制其他应用程序的应用程序进行沙箱操作。
如果你遇到这个问题并且和我有同样的问题,我担心你运气不好。请重新考虑您是否确实需要控制另一个应用程序,如果是这样,您可能无法在 Mac App Store 上分发您的应用程序,抱歉。
法比安
| 归档时间: |
|
| 查看次数: |
1310 次 |
| 最近记录: |