iPhoneアプリ開発 -端末がネットワークにつながっているかどうか知りたい-
やりたいこと
アプリがネットに繋がっていなければアラートボックスを表示させたい。
ネットに繋がってないと利用できない機能とかがある場合は、必須ですね。
やったこと
ソースコードのダウンロード
Appleがネットワークの接続状態を確認するのに便利な「Reachability」を以下で公開してくれています。
Reachability
当然ですが、バージョンアップの日にちを確認しましょう。
今回のは以下
Last Revision:
Version 2.2, 2010-07-20
Updated for iOS 4.0
組み込み
組み込むのに必要なのは、以下の2つのファイル。
- Reachability.h
- Reachability.m
上記のファイルを自身のソースにコピペします。
「Reachability.h」をインポートしといて、ネットを利用する箇所で以下のようなコードを呼び出します。
Reachability *hostReach = [Reachability reachabilityForInternetConnection]; BOOL flag = YES; switch ([hostReach currentReachabilityStatus]) { case NotReachable: flag = NO; break; case ReachableViaWWAN: case ReachableViaWiFi: break; }
flagがNOだったらアラートボックスを表示するようにします。
注意点(ARC)
本ソースはARC非対応なので、ARCを有効にしたままだとエラーになります。
そこで、「Build Phases」の「Compile Sources」にあるReachability.mに以下を追加します。
fno-objc-arc
おまけ
参考サイトにありますが、現状だとwarningが表示されます。
その場合は、以下をimportさせます。
#import <netinet/in.h>
参考
広告
関連記事
-
定期的にデータ取得のためにCakePHP1.3でシェル機能を利用
定期的にデータを取得する行為をするために、はじめてシェル機能を使ってみたのでメモ。 * ス
-
Jenkins + iPhoneアプリ(3) -ipaファイルをTestFlightにアップロード-
* これまで - -[http://pplace.jp/2013/01/1192/:title=
-
アプリのためにFacebookページ作成 -会社のメールアドレスで管理する方法-
アプリを作ると、色々と宣伝をしたくなります。 宣伝の方法は色々ありますが、今回はFacebookペ
-
CakePHP1.3でテストコード(3) -ENUM型が使えない-
cakePHP1.3でのSimpleTestを使ったテストケースの第3回目。 今回は、テーブル構成で
-
Facebookがちょっとコワイ vol.2 -本当にあなたはあなたなの?-
以下のブログを読んで、さらにコワイと思ったFacebook。 あなたが登録している「友
-
jQuery Mobile導入手順 -はじめの一歩-
jQuery Mobileの1.0がリリースされ、利用したい方が増えていると思います。 最初に何を
-
iPhoneアプリ開発 -UIScrollViewでタッチを取得-
* やりたいこと UIScrollViewでタッチを取得する。 * 方法 通常のUIScrollV
-
Jenkins + DeployGate(1) -DeployGateでAndroidアプリ開発-
TestFlight for Androidが発表されて1ヶ月ぐらいたちますが、音沙汰がありません。
-
ソーシャルボタン(Twitterのフォローボタン、Facebookのオススメボタン)を設置する
サイトにソーシャルボタンを設置しようと思いちょこっと調べてみました。 * 設置するボタン
-
ViewController単位で画面の向きを変えてみる
ViewController毎に画面の向きを変えたい!ということがあったのでやってみました。 *