12

iOS 7 では、特定のアプリのセルラー データを無効にする新しいユーザー構成が導入されました。「設定」->「セルラー」で構成し、下にスクロールします。

設定のスクリーンショット

インストールされているアプリごとにスイッチがあり、消費したセルラー データの量を確認できます。

アプリでスイッチがオンになっているかどうかをプログラムでテストするにはどうすればよいですか? そのためのAPIはありますか?アプリがセルラー経由で使用したデータ量を確認できますか?

すべてのアプリの値を取得するよう求めているわけではありません。アプリの使用状況だけに関心があります。

4

2 に答える 2

4

ダウンロードの消費や、アプリでセルラーが有効かどうかを検出する API はありません。

アプリが Web サイトに接続しようとしたときにセルラーがオフになっている場合、iOS はユーザーにセルラーをオンに戻すように求める場合があります。それがどのように機能するかは正確にはわかりませんが、接続がないのにアプリがインターネットにアクセスしようとした場合にポップアップする iOS 6 の「ネットワーク接続なし」アラートにおそらく似ています。

現在のインターネット接続が WiFi 経由かセルラー経由かを確認できますが、セルラーが無効になっている場合は、ネットワーク接続がないというメッセージが表示されます。

詳細はこちら: iOS Detect 3G or WiFi

于 2013-10-04T00:11:52.833 に答える
1

携帯データ ネットワークのスイッチがオンになっているかどうかを確認することはできません。

  • 最も近いのは、SCNetworkReachabilitykSCNetworkReachabilityFlagsIsWWANフラグを使用して、セルラー接続で特定のホストに到達できるかどうかを確認できることです。
  • さらに、NSURLRequestallowsCellularAccessプロパティを使用して、特定の接続に対してセルラー データを有効/無効にすることができます。

参照: https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/Platform-SpecificNetworkingTechnologies/Platform-SpecificNetworkingTechnologies.html

この回答は、システム全体のデータ使用量を測定する方法を示唆しています: iPhone Data Usage Tracking/Monitoring

于 2014-10-14T08:19:25.100 に答える