問題タブ [reachability]
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.
iphone - 到達可能性により、ネットワークがない状態の後にクラッシュが発生する -- 到達可能性を非同期で適切に使用する方法
開発中の iPhone アプリで非常に奇妙なクラッシュが発生しました。アプリを友人に見せるたびにクラッシュするように見えましたが、それ以外の場合はクラッシュしませんでした。マーフィーの法則の側面に一般的に当惑した後、私は衝突のパターンを特定しました - ニューヨーク市の地下鉄。地下鉄を使用した後、アプリが頻繁にクラッシュします。の使用に問題があることを突き止めましたReachability
。ネットワークのない状況 (機内モードを除く) で使用すると、次回アプリがクラッシュします。私は Apple のガイドラインに従っておりReachability
、他のネットワーク操作を行う前に との接続を確認していますが、その呼び出し方法について矛盾するドキュメントをいくつか見つけました。
現在、私は次のようなことをしています:
}
これは、viewDidAppear から呼び出されるメソッドと同期して呼び出しています。
これは、iOS 4 の到達可能性ガイドのコードに基づいています
私の質問:Reachability
このエラーを処理し、3G または Wifi ネットワークの不在を処理する適切な使用方法はありますか? 別のスレッドを生成する必要がありますか、または同期呼び出しを削除するために何かをする必要がありますか?
ところで、これはアプリがクラッシュしたときに表示されるクラッシュ ログです。同期/非同期の問題だと思います。
objective-c - iPhone シミュレーターでインターネット接続をテストする
iPhone シミュレーターでは、WiFi が常にオンになっており、到達可能性機能を使用してインターネット接続をテストできません。NSURLConnection
たとえば、Googleを使用して連絡する場合、私は
iphone - iPhone 3Gデータネットワークのタイムアウト?
私のiPhoneアプリは、ネットワークを介してデータを永続的に送信し、ネットワークが一時的に完全に利用できなくなることを処理できます。しかし、私はiPodで開発を行っており、3G接続の問題をテストするのに苦労しています。私の質問:アプリがフォアグラウンドにある間、非接続の期間がありますか?その後、iphoneはネットワークのチェックを停止します。そのため、バーはなく、ユーザーが電話を「スリープ解除」するまで到達可能性は0を返します。ロック/ロック解除によって?または、たとえばデータネットワークパスなしで1時間かかると、iphoneはネットワークが復旧し、到達可能性がtrueに戻り始めることを認識します(サーバーに接続していない間、1分ごとにポーリングしています)。
これが私のwifiの経験です。アプリの実行中にipodがwifiネットワークに1/2時間接続されていない場合、ネットワークの検索が停止します。デバイスをかき混ぜて検索するには、ロックとロック解除が必要です。また。
もう1つ、iPhoneでは、この永続的なネットワークの使用が行われている間、近接センサーによって画面が暗くなります。
iphone - ネットワークの変更時にiPhoneの到達可能性を更新する
23.5.11を編集
私は今、これを設計しすぎているのではないかと思っています。オンライン接続を使用するときは、適切に処理します-次のいずれかです。
バックグラウンドで進行状況またはアクティビティインジケーターが表示され、失敗した場合は適切なメッセージを表示しますまたは
Safariまたはマップのいずれかの別のアプリケーションを呼び出します。これらのアプリケーションは独自のチェックを実行し、接続がない場合は失敗します。そのため、ユーザーは失敗した他のアプリにとどまりますが、これは完璧ではありません。
したがって、以下で提案していることを実行し、標準の到達可能性が到達不能になり、無線がスリープ状態になった場合に備えてNSURLConnectionを実行する必要がある場合、オンラインリソースを取得しようとするよりも良いかどうかはわかりません。そもそも。
誰かが助けることができれば-私は本当に感謝します。提出する準備がほぼ整いました。これを正しく行う必要があります。
私はAppleのReachabilityサンプルを使用して、モバイル接続またはセルラー接続がスリープ状態になってから復帰する場合、またはWi-Fiに接続してセルラー接続に依存する場合を除いて、一般的に良好な効果が得られます。
モバイル(セルラー)接続が変更されていない場合は問題ありません。これは私が読んだコメントと一致しており、セルラーラジオがオフになったら、手動で再度ウェイクアップする必要があります。しかし、その方法がわかりません。
NSURLConnectionを設定する必要がありますか?いくつかのサンプルコードは素晴らしいでしょう。接続がないという通知を受け取ったら、NSURLConnectionを送信して、すぐに再試行するようにユーザーに指示し、成功したことを示すコールバックを受け取った場合は、到達可能性のオフ設定をオーバーライドしますか?
さらに、接続がないように見えるときはいつでもそれを行う必要がありますか?それがそうである場合に備えて、これはリソースの無駄に思えますが、そうではない可能性があります。Wi-Fiの範囲内にないeganiPodTouch。
DDGの代替案も検討しましたが、同じ問題が発生するようです。
役立つ提案があれば大歓迎です。
ありがとう、
クリス。
iphone - iPhone での 3G サポートの確認
重複の可能性:
iPhone アプリでネットワークの種類を確認する方法
iPhone が 3G に対応しているかどうかを確認する方法を教えてください。最新の到達可能性コードを確認しましたが、3g の可用性を確認するためのコードは含まれていません。
objective-c - Objective C:ネットワークステータス値を取得できません
次のコードでネットワークステータスを取得しようとしています
私は得てself.internetconnection status = <null>
います。私はここで何が間違っているのですか?
objective-c - ルーターだけでなく、iPhone のインターネット接続を確認する
通常の到達可能性ツールを使用して、インターネット接続が利用可能かどうかを確認します。ほとんどの場合は機能しますが、WAN ケーブルを wifi ルーターから抜くと、何らかの理由で、wifi でホストを見つけることができると表示されます。Web アドレスを存在しないものに変更すると、当然のように「インターネットがダウンしています」と表示されます。私の問題はどこですか?
例:
I.「インターネットケーブル」を抜いていますが、電話はwifiでルーターに接続されています。このドメインで初めて、次の行で実行します。
結果 = ホストが見つかりません (正しい)
Ⅱ.電話でwifiを無効にします。結果 = WWAN で見つかったホスト (正しい)
III. 電話でwifiを有効にします。結果 = WIFI で見つかったホスト。(ルーターがオンラインでないため不正解)
iphone - iPhoneが機内モードになっているかどうかを確認するにはどうすればよいですか?
iPhoneが機内モードになっているかどうかをプログラムで知りたいだけです。情報plistにSBUsesNetworkブールフラグを追加する必要があることはわかっていますが、それは私の目的には役立ちません。実際、私はリーチャビリティクラスを使用してインターネットの可用性を識別しているため、機内モードで起動したときにアプリがコードからとSBUsesNetworkフラグから2つのアラートを出します。これら2つのアラートのいずれかを表示したいと思います。だから私は電話が機内モードにあるかどうかをプログラムで知りたいですか?
iphone - アプリ内メールを送信するために到達可能性を使用する必要がありますか?
アップルによると、「ネットワーク アラートの欠落は、アプリケーションが修正のために開発者に返却される 3 番目に多い理由です。」
では、これが必要になるのはいつですか?つまり、いくつかの機能はこれに対応していますか?
アプリ内メールを送信するだけでよい (コードが機能する) ため、Reachability コードをすべて実装する方法も考えなければならないのはかなり面倒です。