请教一下如何获得 macOS 系统内置应用的名字?

2023-07-12 15:39:28 +08:00
 EVPATOR

最近有个需求需要在界面上弹出一个提示框引导用户在系统的设置菜单中勾选某些选项,macOS 在 Ventura 之前系统设置菜单叫 System Preferences ,但是在 Ventura 及之后改成了 System Settings 。在非 sanbox app 的环境下有没有接口可以获取系统设置菜单的名字?

1538 次点击
所在节点    iDev
4 条回复
winzkh
2023-07-12 16:45:41 +08:00
判断系统版本不久行了嘛
```swift
if #available(macOS 13.0, *) {
print("System Settings")
}else {
print("System print("System Settings")")
}
```
winzkh
2023-07-12 16:50:29 +08:00
前面打错了
```swift
if #available(macOS 13.0, *) {
print("System Settings")
}else {
print("System Preferences")
}
```
EVPATOR
2023-07-12 17:23:13 +08:00
@winzkh 多谢,我一开始是尝试拿 BundlewithIdentifier 去拿 com.apple.systempreferences 系统设置的 bundle 的 plist ,结果怎么也拿不到。
EVPATOR
2023-07-14 17:54:47 +08:00
https://developer.apple.com/documentation/foundation/nsfilemanager/1409751-displaynameatpath 补充下,这个 api 可以实时拿到应用本地化的名称,不过缺点是如果用户系统和 app 的语言设置的不一样的话,只能拿到当前语言的名称,拿不到访达和 launchpad 里的名称

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/956182

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX