12月
29
29
SwiftでReachabilityを使う方法
Apple公式で通信状態をチェックする「Reachability」というライブラリが提供されています。
Objective-Cではこのライブラリを使うことができましたが、Swift版のReachabilityは現時点(記事掲載時)では提供されていません。
今回はSwiftでReachabilityを使う方法を備忘録もかねて、載せてみたいと思います。
まず、XcodeにReachabilityのヘッダファイル(Reachability.h)とメソッドファイル(Reachability.m)をインポートします。
言語環境がSwiftなので、Objective-Cのファイルを追加しますか?というアラートが表示されますが、気にせず進みます。
インポートができると、「プロジェクト名-Bridging-Header」というファイルも一緒に作成されます。
ここにヘッダーファイルをインポートする記述を加えます。
#import "Reachability.h"
これでSwiftでObjective-Cのソースを使うことができます。
あとは、クラスを作ったり、何かの処理に加えて使います。
多くの場面で使うことがないようであれば、専用のクラスを作るほどでもないので、こんな感じで。
func checkHasNetworkConnection() -> Bool { let reachability : Reachability = Reachability.reachabilityForInternetConnection() let networkStatus : Int = reachability.currentReachabilityStatus().value return networkStatus != 0 }
これでReachabilityをSwiftで使うことができます。
Swiftのコードではないですが、純正のコード以外特別なライブラリを追加せずに使う方法をご紹介しました。
Objective-Cのソースコードと一緒でちょっと気持ち悪いですが、現時点でSwift版のReachabilityが提供されていないので、この方法で使うしかなさそうです。
開発のプロが教える Swift標準ガイドブック
posted with amazlet at 14.12.29
渡辺 龍司 富家 将己 鈴木 晃 加藤 寛人
マイナビ (2014-12-25)
売り上げランキング: 2,827
マイナビ (2014-12-25)
売り上げランキング: 2,827