gpt4 book ai didi

ios - 如何检测代码是否在主应用程序或应用程序扩展目标中运行?

转载 作者:IT王子 更新时间:2023-10-29 07:48:02 25 4
gpt4 key购买 nike

如果您在 App Extension 中运行,有谁知道如何从您的代码中进行检测?

我有一个在应用程序和扩展程序之间共享类的应用程序。应用程序代码使用 [UIApplication sharedApplication] 但这在扩展中不可用,因此它不会编译说:

'sharedApplication' is unavailable: not available iOS (App Extension)

所以我需要一种方法来检测我是否在扩展中,如果是这样的话,我可以使用 sharedApplication 的替代方法。

最佳答案

您可以使用预处理器宏:

在项目设置中,使用顶部栏中的下拉菜单选择您的扩展目标: enter image description here

然后:

  1. Click Build Settings
  2. Find (or search) Preprocessor Macros under Apple LLVM 6.0 - Preprocessing
  3. Add TARGET_IS_EXTENSION or any other name of your choice in both the debug and release sections.

然后在你的代码中:

#ifndef TARGET_IS_EXTENSION // if it's not defined
// Do your calls to UIApplication
#endif

关于ios - 如何检测代码是否在主应用程序或应用程序扩展目标中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25048026/

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