2017-07-13 17 views
0

IoTアプリケーションがあります。私のiPhoneアプリはIoTデバイスで動作しています。 iPhoneアプリからそのデバイスとやりとりします。アップルウォッチ&IoTデバイスとのiOS通信

Watchアプリケーションを開発中です。そして、IoTデバイスとやりとりするために、データをiPhoneに送信しています(逆も同様)。

は、私はいくつか質問がある:iPhoneアプリケーションが開いているとき

1)私は上記のものがあります。ユーザーがiPhoneアプリを起動せずに時計を直接使用していて、IoTデバイスとやり取りしたい場合はどうなりますか? iOSアプリからAPIを呼び出すことはできますか?はいの場合は制限がありますか?

2)このシナリオを実装するベストプラクティスは何ですか?

答えて

1

1)いいえ、WatchConnectivityフレームワークを使用してウォッチからiPhoneにデータを送信するには、iOSアプリケーションをフォアグラウンドまたはバックグラウンドで実行する必要があります。 iOSアプリが終了した場合、WatchConnectivityフレームワークを使用してウォッチからデータを受信することはできません。

2)デバイスへの接続方法について詳しく知りませんが、私は確かに答えを出すことはできません。一般的に、最善の解決策は、電話アプリがユーザーによって起動されていなくてもウォッチアプリを動作させたい場合は、ウォッチアプリからIoTデバイスに直接通信することです。ただし、IoTデバイスがwatchOSで使用できる組み込み/サードパーティのフレームワークを持たない通信プロトコルを使用している可能性があるため、これはすべての場合に可能ではありません。これがシナリオの場合は、WatchConnectivityフレームワークに依存する必要があります。

+0

デビットと同意しますが、項目1には、WatchConnectivityが特定のケースでバックグラウンドで適切な資格を持ってiPhoneを起動することができます。 – Cobra

+0

@Cobra no、watchOS2からWatch拡張機能でiPhoneアプリそれが実行されていない場合。すでにバックグラウンドで動作している場合は、 'WatchConnectivity'を使用することができますが、これは私の答えでも言及しています。 –

+0

iPhoneアプリをフォアグラウンドで起きさせることはできませんが、確かにバックグラウンドで目を覚ますことができます。これは、あなたのiPhoneアプリがフォアグラウンドでないときにiPhoneですべてのウォッチ処理が処理される方法です。ここでのいくつかの議論は:https://stackoverflow.com/questions/31618550/how-to-wake-up-iphone-app-from-watchos-2。また、Appleのドキュメントも参照してください。 1つの例はhttps://developer.apple.com/documentation/watchconnectivity/wcsession/1615687-sendmessageです。 – Cobra

関連する問題