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>
参考
広告
関連記事
-
iPhoneアプリ開発 −iOS6からの「写真」へのアクセス問題−
写真を扱うアプリを開発している際に問題になったこと。 ※結構前の話を今更まとめてみる。 * 写真へ
-
はてなスターのアイコンを日本酒アイコンにしてみた
日本酒大好きです。 というわけで、はてなスターを日本酒アイコンにしてみました。 その流れ
-
Jenkins + iPhoneアプリ(3) -ipaファイルをTestFlightにアップロード-
* これまで - -[http://pplace.jp/2013/01/1192/:title=
-
Androidアプリ開発 -リストをタッチして別ページ表示-
* 前提 -「設定画面」で各種項目を設定。 --Activity:ConfigActivity --
-
iPhoneアプリ開発 -利用するべきサービス-
iPhone(iOS)アプリ開発において使っているサービスを列挙。 この手のサービスがないと、開発中
-
MacBook ProにGitのインストール
MacBook ProにGitをインストールしようと思いたち、思ったより手間取ってしまったので備忘録
-
iPhoneアプリにGoogle Analyticsを入れてみる -Google Analytics SDK for iOS導入-
* 導入経緯 iPhoneアプリをリリースして、を使って「ランキング」や「ダウンロード数」は適宜チ
-
iPhoneアプリ開発 −タッチで線を描く(2)/枠線を描く−
* 前回までのお話 * やりたいこと 今回やりたいことは以下の2点。 -(1) 画面をタッチして
-
MacでRuby on Railsの開発環境構築 -Apacheで動かす-
* 環境 -MacBook Air MD231J/A -Mac OS X バージョン10.8.2
-
Capistranoで簡単デプロイ -開発用サーバー編-
cakePHPを使って開発しているサービス()で、リリース周りを楽にしたいなと思いCapistran