![](/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.