为什么Apple Watch无法与App delegate& NSUbiquitousValueStore?

时间:2015-06-18 05:03:51

标签: ios objective-c iphone apple-watch nsubiquitouskeyvaluestore

我在我的View Controller中运行它:

NSString *indexV = [NSString stringWithFormat:@"%d", index];
[[NSUbiquitousKeyValueStore defaultStore] setString:indexV forKey:@"index"];
[[NSUbiquitousKeyValueStore defaultStore] synchronize];
indexV = [[NSUbiquitousKeyValueStore defaultStore] stringForKey:@"index"];
NSLog(@"index V: %@", indexV);

然后退出应用程序。

在我的AppDelegate中,我有:

- (void)application:(UIApplication *)application handleWatchKitExtensionRequest:(NSDictionary *)userInfo reply:(void (^)(NSDictionary *))reply {

    NSString *indexV = [[NSUbiquitousKeyValueStore defaultStore] stringForKey:@"index"];
    NSLog(@"indexV: %@", indexV);

    NSDictionary *d = @{@"index" : indexV};
    reply(d);

在我的InterfaceController中,我有:

- (void)awakeWithContext:(id)context {
    [super awakeWithContext:context];
    [self sync];

- (void)sync {
    [WKInterfaceController openParentApplication:@{@"give" : @"give"} reply:^(NSDictionary *replyInfo, NSError *error) {
            NSLog(@"index: %@", replyInfo[@"index"]);
            if (replyInfo[@"index"]) {
                index = [replyInfo[@"index"] intValue];

在iPhone应用程序中,我看到索引被设置为整数的日志> 0

为什么此字符串不在应用程序之间同步? 我能发送数组好了。 是的我配置了应用程序组,这就是- (void)application:(UIApplication *)application handleWatchKitExtensionRequest: ..将会响应的方式。

但是当我运行Apple Watch应用程序时,索引始终以@“0”结束。

0 个答案:

没有答案