0

アプリがインターネットに接続されているかどうかを確認するにはどうすればよいですか? 現在、appdelegate.mファイルでこのコードを使用しています

dispatch_queue_t connectivityThread = dispatch_queue_create("com.gm.kart.connectivity", NULL);

dispatch_async(connectivityThread, ^{
    while (true){
        if([GMMConnectivity hasConnectivity])
            NSLog(@"%@", @"connected");
        else
            NSLog(@"Not connected");

        usleep(10000000);
    }
});

ログインボタンをクリックすると、インターネットが接続されているかどうかを確認したいNSnotificationcenterですか?

私を助けてください

4

2 に答える 2

11

以下の例をダウンロードした後。

http://developer.apple.com/iphone/library/samplecode/Reachability/index.html

次の手順のように、プロジェクトで使用できます。

included Apple's Reachability.h & .m from their Reachability example.

add the SystemConfiguration framework.

次のメソッドを appdelegare.m ファイルに追加します:-

- (BOOL) connectedToNetwork{
    Reachability* reachability = [Reachability reachabilityWithHostName:@"google.com"];
    NetworkStatus remoteHostStatus = [reachability currentReachabilityStatus];

    if(remoteHostStatus == NotReachable)
    {
        isInternet =NO;
    }
    else if (remoteHostStatus == ReachableViaWWAN)
    {
        isInternet = TRUE;
    }
    else if (remoteHostStatus == ReachableViaWiFi)
    { isInternet = TRUE;

    }
    return isInternet;
}

isInternet は、.h クラスへの BOOL 宣言です。

あなたのコードに従って: -

dispatch_queue_t connectivityThread = dispatch_queue_create("com.GMM.assamkart.connectivity", NULL);

dispatch_async(connectivityThread, ^{
    while (true){
       isInternet =[self connectedToNetwork];
    if (isInternet)
    {
           NSLog(@"connected");
        }
        else
        {
            NSLog(@"Not connected");
        }
       // usleep(10000000);
    }
});
于 2013-04-17T10:01:01.667 に答える