有了WatchKit,您的应用程序可以在手机上运行,​​而 watch 应用程序可以作为扩展程序运行。

如果创建的库包含要在电话应用程序和 watch 扩展中使用的通用代码,是否有办法判断该代码是否在电话应用程序或 watch 扩展中运行?

IE。

if ([self isRunningInWatchExtension]) {
    NSLog(@"this is running on watch");
} else {
    NSLog(@"this is running on phone app");
}


- (BOOL)isRunningInWatchExtension {
    ???
}

最佳答案

我已经通过检查包标识符来完成此操作:

if ([[[NSBundle mainBundle] bundleIdentifier] isEqualToString:kAppBundleIdentifier]) {

    // Running in main app
}
else if ([[[NSBundle mainBundle] bundleIdentifier] isEqualToString:kWatchBundleIdentifier]) {

    // Running in extension
}

关于ios - iOS WatchKit-如何确定代码是否在Watch Extension或应用中运行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29354990/

10-09 12:54