私は現在iOS開発の初心者であり、キャッシュポリシー(NSURLRequestReturnCacheDataDontLoad)を取得してキャッシュからプルし、iPhoneでオフライン(機内モードを使用)でWebページを表示しようとしています。私は現在、Appleが提供するReachability APIを使用して、ネットワーク/Wi-Fi接続が稼働しているかどうかを確認しています。これは正常に機能しますが、機内モードに移行すると、UIWebViewにデータを入力するためのWebページが表示されません。どんな提案も非常に役に立ちます。私はオンラインで周りを見回しましたが、あまり役立つリンクは見つかりませんでした。ありがとう。
コードは以下のとおりです。
*- (IBAction)refresh:(id)sender
{
NSURL *url = [NSURL URLWithString:_entry.articleUrl];
NSURLRequest *webRequest = nil;
NSString *articleUrl = [_entry.articleUrl substringFromIndex:7];
NSArray *myArray = [articleUrl componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"/"]];
NSString *hostUrl = [myArray objectAtIndex:0];
NSLog(@"%@", hostUrl);
Reachability *reachability = [Reachability reachabilityWithHostName:hostUrl];
NetworkStatus netStatus = [reachability currentReachabilityStatus];
[[NSURLCache sharedURLCache] setMemoryCapacity:1024*1024*10];
// Verify current help file cache if we have network connection...
if (netStatus == ReachableViaWWAN || netStatus == ReachableViaWiFi)
{
webRequest = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:30];
}
else
{
// Network NOT reachable - show (local) cache if it exists
webRequest = [NSURLRequest requestWithURL:url cachePolicy:NSURLRequestReturnCacheDataDontLoad timeoutInterval:30];
}
[_webView loadRequest:webRequest];
}*