WIFI が接続されて動作している場合でも、セルラー ネットワーク (3G または 2G またはそれらが持っているものは何でも) を使用できるかどうか疑問に思っていました。Apple が「到達可能性」のサンプル コードを持っていることに気付きましたが、それはセルラー ネットワークを使用して接続できるかどうかだけを教えてくれます。代わりに、セルラー ネットワークのみを実際に使用したいと考えています。
よろしく、ノーム。
WIFI が接続されて動作している場合でも、セルラー ネットワーク (3G または 2G またはそれらが持っているものは何でも) を使用できるかどうか疑問に思っていました。Apple が「到達可能性」のサンプル コードを持っていることに気付きましたが、それはセルラー ネットワークを使用して接続できるかどうかだけを教えてくれます。代わりに、セルラー ネットワークのみを実際に使用したいと考えています。
よろしく、ノーム。
絶対そうです。到達可能性通知をネットワーク インターフェイスの列挙と組み合わせる必要があります。そして - この点は非常に重要です: BSD ソケットの bind() 呼び出しを使用して CONCRETE IP アドレスにバインドします。0.0.0.0 を使用しないでください。アプリはネットワークに適応し、認識します。私の貧弱な要点の例: https://gist.github.com/avesus/fdb465b60a4f5204845c
いいえ、そうは思いません。
私の理解では、デバイスが Wi-Fi に接続されている場合、3G はデータに使用されず、すべてのデータ トラフィックは Wi-Fi 経由で移動します。
別のセルラー デバイスへのセルラー データのみが、電話プロバイダーのネットワークを使用します。
これを達成する唯一の方法は、ユーザーが WiFi を使用しているかどうかを検出し (コード例は、引用した「到達可能性」の例にあります)、使用する前に WiFi を無効にするようユーザーに促すことだと思います。