iPhone アプリでローカルに使用するには、HTTP プロトコルを使用して XML ファイルをダウンロードする必要があります。このファイルは時々サーバー上で更新されますが、それほど頻繁ではありません。
コンテンツがサーバー上で更新されている場合にダウンロードするだけで、Documents フォルダーに既にあるダウンロード済みファイルとサーバー上のファイルを比較するにはどうすればよいですか?
iPhone アプリでローカルに使用するには、HTTP プロトコルを使用して XML ファイルをダウンロードする必要があります。このファイルは時々サーバー上で更新されますが、それほど頻繁ではありません。
コンテンツがサーバー上で更新されている場合にダウンロードするだけで、Documents フォルダーに既にあるダウンロード済みファイルとサーバー上のファイルを比較するにはどうすればよいですか?
ファイルを初めてダウンロードするときは、応答の Last-Modified ヘッダーから日付を保存します。オブジェクトから引き出すことができNSHTTPURLResponse
ます。
以降の実行では、その日付If-Modified-Since
をNSURLRequest
. サーバー上のファイルが変更されていない場合、 の はstatusCode
304 NSHTTPURLResponse
(「変更されていません」を意味します) であり、応答の本文は空である必要があります。
ドキュメント ディレクトリをトラバースして特定の名前のファイルを探したい場合は、NSFileManager を使用-fileExistsAtPath:isDirectory
して、ダウンロードしたファイルの名前と比較します ( -suggestedFilename
NSURLResponse を使用している場合) -isEqualToString
。
リビジョン日付を取得する必要がある場合は、NSFileManager-attributesOfItemAtPath:error:
をキー NSFileModificationDate と組み合わせて使用します。