問題タブ [wcsession]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
153 参照

ios - transferUserInfo が作成できるキューの数

transferUserInfo統計データを時計に送信するために使用しています。

時計がスリープ状態またはアイドリング状態 (時計を表示) で、電話アプリが実行されている場合、多くの情報が転送されます (繰り返しタイマーによってトリガーされます)。

アプリはいくつの「userinfo」キューを送信できますか? 制限はありますか?

0 投票する
1 に答える
385 参照

ios - WCSession:キューに入れられたメッセージをキャンセルできますか?

sendMessage(_:replyHandler:errorHandler:)の方法で送信されたメッセージをキャンセルする方法はありWCSessionますか?

ドキュメントから:

メッセージは順番にキューに入れられ、送信した順序で配信されます。

0 投票する
1 に答える
2634 参照

watchkit - WCSessionDelegate: sessionDidBecomeInactive および sessionDidDeactivate は使用不可とマークされていますが、必須です

Xcode 8 の convert 関数を使用して、Swift 2 アプリを Swift 3 に変換しました。

私のコードには、 としてマークされたクラスがありますWCSessionDelegate

Swift 2 では、メソッドsessionDidBecomeInactivesessionDidDeactivate.

Swift 3 バージョンをコンパイルすると、コンパイラは、クラスが protocol に準拠していないと不平を言いますWCSessionDelegateが、これは明らかに正しいものです。
次に、両方の関数のスタブを挿入することを提案します。

これらのスタブが挿入されると、次のエラーが報告されます。

この問題を解決するにはどうすればよいですか?

0 投票する
1 に答える
617 参照

swift - iOS がバックグラウンドでリモート通知を受信したときに Watch にデータを送信する

sendMessageData(_:replyHandler:errorHandler:)iOSからWatch OSに情報を送信するために使用しています。これは正常に機能し、これを使用した他のアプリごとに iOS がバックグラウンドにある場合にも正常に機能します。ただし、iOS がバックグラウンドにあり、リモート通知の結果としてメソッドが呼び出された場合は機能しないようです。

iOS がバックグラウンドにあり、リモート通知が届くと、iOS はいくつかのプロセスを開始します。これらはすべて機能しますが、時計にデータを送信する場合は、ここで失敗します。iOSアプリがフォアグラウンドにあり、同じリモート通知が来る場合、上記の方法で時計にデータを送信すると機能します.

iOS がバックグラウンドにあり、呼び出しが iOS が処理するリモート通知の結果である場合に、iOS が時計にデータを送信する方法はありますか?

0 投票する
1 に答える
309 参照

ios - エラーの修正方法: 7012 メッセージの返信に時間がかかりすぎました - WCSession WatchOS 3

「メッセージの返信に時間がかかりすぎました」というようなことを試してい ます。- Watch OS 3 での Watch 接続の問題

私が見つけることができるものすべてを試すだけでなく、間違いを見つけることができません。

しかし、私はまだエラーが発生しています。シミュレーターを使用しています...シミュレーターで WCSession をテストすることは可能ですか、それともデバイスでのみ行うことができますか?

0 投票する
0 に答える
260 参照

swift - WCSession を介して複雑さを更新する

WCSession を介してコンプリケーションを更新したいのですが、メモが機能しているようです。10 分ごとにコンプリケーションを更新しています (これが最大であることがわかりました)。しかし、何も起こりません。誰でも私のコードで問題を見ることができますか?

更新に必要なデリゲートを実装しました。ここでの問題は何ですか?どうもありがとうございました!

import ClockKit import WatchConnectivity

0 投票する
0 に答える
156 参照

ios - シミュレーターで watchOS と iOS アプリを同時に起動するにはどうすればよいですか?

iOS アプリの機能を拡張することになっている watchOS 用のアプリに取り組んでいます。

iOS シミュレーターでアプリを実行します。次に、Watch アプリのスキームを選択すると、その横にあるシミュレーターに「iPhone 7 + Apple Watch Series 2 - 38mm」と表示されます。ただし、「実行」を押すと、iOS アプリが強制的に閉じられ、iOS シミュレーターが動かなくなり、Watch シミュレーターでアプリが起動します。

ここで、iOS シミュレーターでアプリを実行するために、もう一度 iOS スキームに戻る必要があります。これにより、デバイスが切断されているように見えるため、WCSession実装しようとしている機能をテストできません。私は方法を考え出していupdateApplicationContextますが、9/10回では、時計は更新を受信して​​いないようです. 強制終了と交互の「実行」の長いセッションの後でのみ、時計シミュレーターが iOS アプリからメッセージを受信することがあります。

奇妙な「実行順序」によって引き起こされるもう 1 つの障害は、Xcode のコンソール ログ出力を使用してウォッチ アプリをデバッグできないことです。これは、iPhone が常に最後に「実行」する必要があるため、コンソールを選択することさえできないためです。時計シミュレーターを「聞く」。

これをどのように設定するのですか?これは、watchOS 用のアプリを開発するために Apple が推奨する方法ではありません。

時計アプリを実行する前に iOS スキームが選択されているときに「停止」アイコンをクリックすると、iOS シミュレーターは少なくとも「存続」し、その後 iOS アプリを開くことができるため、WCSessionほとんどの場合、動作することがわかりました。ただし、すべてを再実行するたびに余分な手順がまだたくさんあるため、まだ満足していません。