由于 UIApplication.sharedApplication() 在 iOS8 今天的小部件/扩展中不可用,我如何动态检查代码当前是作为小部件还是应用程序运行?运行应用程序时,我想调用例如
UIApplication.sharedApplication().registerUserNotificationSettings(settings)
当运行与小部件相同的代码时,这应该被跳过。是否可以对此进行检查?
最佳答案
为您的扩展制作一个单独的前缀文件,在前缀文件中定义一个未在应用程序前缀文件中定义的宏。然后检查这个宏是否被定义会告诉你你是否在扩展中。或者,您可以在应用程序的前缀文件中定义宏,而不是在扩展程序中,然后从另一个方向检查。
关于swift - 如何检查代码是否在 Today Extension 或 App 中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26556408/