gpt4 book ai didi

swift - 检测应用程序是否在 macOS beta 版本上运行

转载 作者:行者123 更新时间:2023-12-05 03:51:39 27 4
gpt4 key购买 nike

我希望能够以某种方式检测我的应用程序是否在测试版 macOS 11 上运行,因为我想将一些已知错误告知用户。我只想向 macOS 11 beta 用户显示这样的警报,这意味着不是 macOS 10.15 用户,也不是 macOS 11 最终版本的用户。我当然可以在 macOS 11 即将完成时提交应用程序更新以删除警报,但如果有一些可重复使用的东西我可以在多个应用程序和 future 的 macOS beta 版本中使用,那就太好了。

约束:

  • 该应用程序是沙盒。
  • 该应用在 App Store 中,因此没有私有(private) API。
  • 该应用没有网络授权,因此检测需要离线。
  • 我不想捆绑已知 macOS 内部版本号的列表并进行比较。

我的想法是也许可以使用某种嗅探。可能有一些 API 在 macOS 版本为 beta 版本时返回不同的结果。

最佳答案

我相信你运气不好。 About This Mac 使用 PrivateFrameworks/Seeding.framework,这里是重要的反汇编:

/* @class SDBuildInfo */
+(char)currentBuildIsSeed {
return 0x0;
}

所以这似乎是一个构建时编译器标志。不幸的是,框架中的 plist 不包含此标志。

私有(private) API 使用示例:kaloprominat/currentBuildIsSeed.py

疯狂的人:可以读取二进制文件并比较函数的程序集。我将从类转储代码开始,它会为您提供不同的胖二进制文件和函数偏移量。

关于swift - 检测应用程序是否在 macOS beta 版本上运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62744103/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com