2017-06-02 28 views
0

私はApple WatchとiPhoneの間の通信を含む簡単なアプリケーションを作成しています。現在、私は2つの通信に得ることができない、と私は私のpoblemがWCSessionは、iPhone上で活性化しないということであると考えていWatchOS 3.2.2WatchOS 3:なぜWCSessionはiPhone上でアクティブにならないのですか?

でiPhone 6S(10.3.2)を使用して

WatchOSコードが実行されると、コンソールはWCSessionがアクティブ化されていることを示す "activationDidCompleteWithState"を期待どおりに出力します(下記のコードを参照)。

しかし、iOS側では、「activationDidCompleteWithState」メソッドは決してコンソールに出力されません。 109FE5D2-6218-4D67-AFD7-E72FA7E4A22EによるWCErrorCodeTransferTimedOutへ[::withMessageID WCSession onqueue_handleMessageCompletionWithError] - [WC]を

:私は電話に時計からメッセージを送信しようとすると、彼らはタイムアウトし、私は次のエラーを取得します - > IDSrrorTypeTimedOut-> IDSResponseTimedOut

私はWCSessionが電話では決してアクティブ化されないと信じています。あなたはこの問題を見たことがありますか?私はこれで夢中になります...

私はこれまでWatchOS 2でこれを構築していましたが、うまくいきました。なんとなく、WatchOS 3のアップデートが私を援助してくれました。何か助けていただければ幸いです。 AppDelegate.mで

のiOSコード:ExtensionDelegate.mで

@implementation AppDelegate 
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    if ([WCSession isSupported]) 
    { 
     WCSession* session = [WCSession defaultSession]; 
     session.delegate = self; 
     [session activateSession]; 
    } 

    return YES; 
} 
- (void)session:(WCSession *)session activationDidCompleteWithState:(WCSessionActivationState)activationState 
      error:(NSError *)error 
{ 
    NSLog(@"PHONE - activationDidCompleteWithState"); 
} 

WatchOSコード:

@implementation ExtensionDelegate 
- (void)applicationDidFinishLaunching 
{ 
    if ([WCSession isSupported]) 
    { 
     WCSession* session = [WCSession defaultSession]; 
     session.delegate = self; 
     [session activateSession]; 
    } 
} 
- (void)session:(WCSession *)session activationDidCompleteWithState:(WCSessionActivationState)activationState 
      error:(NSError *)error 
{ 
    NSLog(@"activationDidCompleteWithState"); 
} 

答えて

0

[OK]を、私はこれを考え出しました。

私は携帯電話で働いているWCSessionを持っているiPhoneの電源を入れ直しました。ペアリングを解除しなければならない場合は、再度ペアリングしてください。

これで動作します。完全なナンセンス...

関連する問題