sqlite データベースに基づく iOS アプリを開発しています。新しいデータを追加するたびにアプリケーションを更新したくないので、sqlite データベースをサーバーに保存し、ユーザーに更新をダウンロードするかどうか尋ねます。
これが私のコードです:
NSString *stringURL = [NSString stringWithFormat:@"http://myurl.com/dl.php"];
NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:stringURL]];
[data writeToFile:storePath atomically:YES];
dl.php は単に sqlite データベースをクライアントに送信します (php: readfile("foo.sqlite"))。ブラウザでその URL にアクセスすると、データベースが正しくダウンロードされます (336 KB)。
私も試しました:
[fileManager removeItemAtPath:storePath error:error];
[fileManager createFileAtPath:storePath contents:data attributes:nil];
私の問題: ファイルはダウンロードされますが、sqlite データベースは (336 KB ではなく) 188 KB しかありません。ファイルは完全には壊れていません。sqlite データベース エディタでファイルを開くと、テーブル構造は正しいのですが、sqlite ファイルにデータがありません。
私が間違っていることは何か提案はありますか?