0

私が取り組んでいるこのアプリでは、ユーザーが写真を撮ってローカルに保存できます (Core Data 経由の小さなサムネイル画像と、ドキュメント ディレクトリ内のフルサイズの画像)。しかし、イメージ ファイルをドキュメント ディレクトリに書き込むのに時間がかかることがわかりました。iPhone 3GS では 8 秒、iPhone 3G と第 1 世代の iPod touch ではさらに長くなります。私はこのようにファイルを書きます:

[imgData writeToFile:imagePath アトミック:YES];

...これを行うより速い方法はありますか?iPhone のカメラ アプリは、画像をファイル システムにすばやく書き込むようです。スレッドで書き込みを行うこともできますが、スレッドが終了する前にユーザーがアプリを終了する可能性があることを懸念しています。

4

1 に答える 1

2
  • 密接に関連する質問が以前に尋ねられましたが、iPhone のカメラ アプリは文書化されていない内部 API 呼び出しを使用しているというのが一般的な意見です。これが本当かどうかは個人的にはわかりませんが、画像が保存されるまでiPhoneアプリがバックグラウンドで存続できる可能性が高いと思います.
  • おそらく、実際にスレッドを使用して画像を保存してみる必要がありますが、よりデータ指向の方法でバイトチャンクで保存してください。このようにして、ユーザーがホーム ボタンを押した場合、- (void) applicationWillTerminate(UIApplication *)applicationアプリのデリゲートからのメソッドで、データをディスクに保存するプロセスを完了することができます。ただし、これで余分に 5 秒しか稼げませんが、何もないよりはましです。テキスト ファイルの保存についても、同様の推奨事項が示されています。これがお役に立てば幸いです。
于 2009-10-31T19:15:51.890 に答える