4

私の iPhone アプリケーションは、電話番号をダイヤルし、データをリモート サーバーに送信する必要があります。

次のことが重要です。

  1. 呼び出しをトリガーし、次に
  2. サーバーと通信するバックグラウンド タスクを設定する

私はAT&T電話で開発/テストを行ってきました.AT&T電話は、電話の開始中にバックグラウンドでデータを送信することに問題はありません.

ただし、Verizon のお客様には、データを呼び出してストリーミングする機能がないため、操作の順序を逆にしたいと考えています。

どのルートを取る必要があるかを判断する最善の方法は何ですか? iPhone のモデル番号を見る例を見たことがあります。それが 3.3 であれば、それは Verizon であることを意味するので、そこから先に進むことができますが、それは堅牢性や将来性を保証するものではないようです。Verizon は現在この制限がある唯一の通信事業者ですか? のようなプロパティがあるはず-[UIDevice isMultiTaskingSupported]です。

4

1 に答える 1

1

UIDeviceあなたが言及した方法のような素晴らしいワンライナーはありませんが、 Core Telephonyフレームワークがあります。CTCarrier私は自分で使用したことはありませんが、クラスを使用してこれ、特にmobileNetworkCodeプロパティを見つけることができるようです。このリストから始める必要があります。見た目から、一部の通信事業者では、このコードを使用して EDGE を使用しているかどうかを判断できます。CDMA または EDGE ネットワークの場合、音声とデータを同時にストリーミングする場合の答えは「いいえ」ですが、 EDGE ではないGSM ネットワークの場合は問題ありません。プロパティを使用しcarrierNameて「AT&T」を検索することもできますが、これでは EDGE が考慮されません。

良い解決策はありますか?おそらくそうではありません。

于 2011-11-29T04:49:24.573 に答える