7

Tony Millionの Reachability Code を使用 しており、到達不能ブロックでダウンロードを一時停止しようとしていますが、ダウンロードが一時停止される前にインターネットが切断されるたびにAFNetworkingが失敗し、「ネットワーク接続が失われました」というエラー メッセージが表示され、ダウンロードを再開できません。ダウンロードするので、何をすべきですか?

これは私がアプリケーションデリゲートで行ったことです

__weak MTCAppDelegate *weakself = self;
Reachability * reach = [Reachability reachabilityWithHostname:@"www.google.com"];


reach.reachableBlock = ^(Reachability * reachability)
{
    dispatch_async(dispatch_get_main_queue(), ^{
        [[AFDROSingleton sharedInstance] resume];
        for (UIView *subview in [weakself.window subviews]) {
            if (subview.tag == 20) {
                [subview removeFromSuperview];
            }
        }
    });
};

reach.unreachableBlock = ^(Reachability * reachability)
{
    dispatch_async(dispatch_get_main_queue(), ^{
        MTCReachability *reach = [[MTCReachability alloc] initWithFrame:weakself.window.frame];
        [reach setTag:20];
        [weakself.window addSubview:reach];
        [weakself.window bringSubviewToFront:reach];
       [[AFDROSingleton sharedInstance] pause];
    });
};

[reach startNotifier];
4

1 に答える 1

1

ARC に更新された Apple サンプルからの到達可能性コードがあります。

Xcode 4.6.3 の Reachability プロジェクトに入れました。興味がありましたら、必要に応じてお送りします。

于 2013-08-16T18:19:21.313 に答える