URLからplistを読み込み、そこにある現在のplistを上書きすることができます。以下のコードはシミュレータ上で動作しますが、iPhone 4デバイスをチェックすると、更新されたコンテンツはプルダウンされません。 Xcodeへの新しい人のための知恵の言葉?WebサーバーからPLISTをロードする
Reachability *r = [Reachability reachabilityWithHostName:@"www.google.com"];
NetworkStatus internetStatus = [r currentReachabilityStatus];
if ((internetStatus == ReachableViaWiFi) || (internetStatus == ReachableViaWWAN)){
NSString *path = [[NSBundle mainBundle] bundlePath];
NSString *finalPath = [path stringByAppendingPathComponent:@"SpecialCases.plist"];
NSURL *theFileURL = [NSURL URLWithString:@"http://www.awebsite.com"];
NSDictionary *replace = [[NSDictionary alloc] initWithContentsOfURL:theFileURL];
if (replace != nil){
[replace writeToFile:finalPath
atomically:YES];
}
}
「更新されたコンテンツをプルダウンしない」と言うと、正確にはどういう意味ですか?ブレークポイントを設定し、コードをステップ実行します - それは条件分岐に入りますか?変数の値を確認してください。 nilを置き換えると、何らかのエラーがスローされますか? –
この状況では到達可能性の状態をチェックするのはあまり意味がありません。ちょっと前にplistをbackground_inにダウンロードしてください。ダウンロードが失敗した場合、あなたは知っているでしょう。あなたは 'if'をコメントアウトしようとしましたか? – Costique
ええ、私はその文をあとでそこに投げることについて考えなかった。私はすでにリーチャビリティを取り除いています。 –