![](/img/trans.png)
[英]How to share keychain data between a WatchKit extension and an iPhone app
[英]How to Share data between iPhone app and applewatch?
关于从iPhone应用程序到苹果手表的共享数据,我遇到了问题。 我尝试下面的代码来分享NSMutablearray到苹果手表,但它无法正常工作。
NSData *encodedObject = [NSKeyedArchiver archivedDataWithRootObject:arrStartScore];
NSUserDefaults *defaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.test.StartScore"];
[defaults setObject:encodedObject forKey:@"WatchHomeViewTableList"];
[defaults synchronize];
用于将数据检索到Apple Watch
NSUserDefaults *myDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.com.test.StartScoreCheck"];
arrStartScore = [myDefaults objectForKey:@"WatchHomeViewTableList"];
NSLog(@"dict....%@",arrStartScore);
要将数据从手机发送到手表,请使用此代码。
WCSession *session = [WCSession defaultSession];
NSError *error;
[session updateApplicationContext:@{@"message": yourArray} error:&error];
要从手表上的手机接收数据:
- (void) session:(nonnull WCSession *)session didReceiveApplicationContext:(nonnull NSDictionary<NSString *,NSMutableArray *> *)applicationContext {
}
您可以使用didReceiveApplicationContext访问您的数组
[applicationContext objectForKey:@"message"];
watchOS3在手表和手机上分离了UserDefaults。 AppGroup可以在一个设备中的一个开发人员的应用程序之间共享数据。 要在设备之间传输数据,请使用WatchConnectivity框架。
您可以使用WatchKit Connectivity Framework共享数据。 您可以使用不同的方式进行背景或互动。
通过Apple查看此视频 ,它解释了iPhone和Watch之间通信的所有不同方式。
此外,您可以创建一个单独的手表连接类,并在iOS和WatchOS中使用它。 在设备中建立会话并集成委托方法,您就完成了。 您现在可以在iOS和WatchOS上来回发送和接收消息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.