上架有使用網路功能的APP時,都必須要檢測網路狀態,若是網路不可使用時,
要明確地告知使用者,否則可能會被蘋果退件。
在此介紹簡單的檢測網路的方法,先下載Reachability,之後把Reachability.h,m 加入專案中
初始化Reachability,並丟入要測試的網址。
Reachability *rech = [Reachability reachabilityWithHostName:@"www.apple.com"];
使用NetworkStatus類別,來取得當前的網路狀態
NetworkStatus netStatus = [rech currentReachabilityStatus];
有三種可能的狀態:
NotReachable 無法連線
ReachableViaWiFi 使用WiFi
ReachableViaWWAN 使用WWAN(3G,4G)
這樣就能偵測網路狀態了
if (netStatus == NotReachable) {
NSLog(@"目前沒有網路,請檢查您的網路狀態");
}
此外,Reachability有提供Notification,可以將他加入監聽之中。
name使用Reachability類別提供的name
kReachabilityChangedNotification
加入到監聽之中
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(reachabilityChanged:) name:kReachabilityChangedNotification object:nil];
開始監聽
[rech startNotifier];
只要使用者網路狀態有問題,我們可以立刻告知使用者錯誤訊息,
而不是讓APP就卡死在那邊,以利提升使用者體驗。
而不是讓APP就卡死在那邊,以利提升使用者體驗。
沒有留言:
張貼留言