objective-c - 将其他正在运行的应用程序的窗口置于前面
问题描述
我想要实现的目标:当用户在我的应用中按下“购买”时,App Store 窗口应该会出现,其中包含我的应用 url。
当 App Store未运行时,这可以正常工作:[[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:@"macappstore://..."]];
但是,当 App Store已经在运行并在 Dock 中最小化时,它的窗口不会出现。它变得活跃,是的,但窗口没有出现。
我已经尝试过:使用NSRunningApplication
并尝试获取应用程序unhide
,activateWithOptions:
它,但这不起作用。
我在NSWorkspace
and中看不到更多选项NSRunningApplication
,因此如果有人对此有一些解决方案,将不胜感激。
解决方案
嗯,我想不出任何不涉及 Applescript 或 Accessibility API 的方法,然后要求用户授予您的应用访问权限,这更糟。(我的意思是,您可以退出并重新启动 App Store,但这很不和谐。)老实说,这是 App Store 中的不良行为,因此您应该向 Apple 提交一份报告,指出窗口不会出现在最前面。不过,它现在对你没有帮助。
推荐阅读
- amazon-web-services - 如何查询 AWS Athena 分区表
- curl - 如何解决 cURL (56) SSL 错误 -5961
- r - 在 string_extract() 中使用lookbehinds提取字符串组
- python - SQLite 如何动态创建表?
- jenkins - 使用流 DSL 将构建流迁移到管道中
- flutter - 如何在颤动中实现这种形状?
- javascript - 获取 API- res.json() 返回一个 [object][object]
- php - MySQL查询从表2中获取总项目数到表1中的所有者?
- swift - 如何快速更改内容?
- momentjs - 将毫秒传递给 moment() 时如何获取实际的实时日期