2011-11-14 13 views
3

まず、を使用して、私のアプリにWiFiが必要であることを指定することができます。WiFiまたは3Gの指定方法を教えてください。

実際、私のアプリはWiFiまたは3Gの両方でうまく動作します。このようなネットワーク要件をどのように表現できますか?これには何かInfo.plistがありますか?または、Reachabilityで自分自身をテストするだけの方法はありますか?

答えて

3

あなたは正確に何をしようとしていますか?ネットワークアクセスが必要なだけであれば、動作させるために何もする必要はありません。どこでも接続しようとする前にネットワークが利用可能かどうかを迅速にテストできるため、到達可能性は有用ですが、ネットワークを使用しようとする前にネットワークがあるかどうかを知る必要がある場合にのみ便利です。通常の状況下では、ネットワークの使用を試みるだけで、発生する可能性のあるエラーを正常に処理できます。

+0

で見ることができます。 'UIRequiresPersistentWiFi'よりも一般的な鍵はこれを非常に簡単にします。 – an0

+0

@ an0:ネットワークを使用しようとするとエラーが発生すると、ユーザーに素晴らしいエラーメッセージが表示されます。 「UIRequiresPersistentWiFi」は、デバイスがロックされている場合でもWi-Fiが電源を切らないようにする必要があるアプリに対してのみ存在します。このコンセプトは3Gラジオには適用されません。なぜなら、ロックされている間でも携帯電話のように動作し、3G接続を維持する必要があるからです。 –

2

私の提案は、SCNetworkReachabilitySetCallback(ネットワークの状態が変わるたびに呼び出されます)となり、WiFiまたは3G接続がない場合はエラーが発生します。 Info.plistファイルでサポートされていUIKitの

b.t.w.、すべてのキーは、どちらのWiFiや3Gが利用可能な場合、私は、ユーザーのための素晴らしいプロンプトをしたいhttp://developer.apple.com/library/ios/#documentation/general/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html

+0

ネットワーク接続を試みる代わりに、到達可能性をチェックしてエラーを投げるべきではないことに注意してください。到達可能性の情報は失効している可能性があり、接続を試みるのではなく、その情報を使用することで何も絶対に節約できません。ただし、接続を試みてエラーが発生した場合、Reachabilityの通知を聞いて、ネットワークがいつ復帰するかを知ることができます(自動的に再試行するか、ネットワーク状態をユーザーに表示したい場合)。 –

関連する問題