1

MountainLionに固有のコードを書いているので、非推奨のAPIの使用を避けたいと思います。

FSFileOperationCreateを使用して、コピーの進行状況に関する情報(kFSOperationBytesCompleteKey、kFSOperationThroughputKey、kFSOperationTotalBytesKey)を受け取りますが、ドキュメントには次のように記載されています。

非同期ファイル操作を表すオブジェクトを作成します。(OS X v10.8では非推奨です。Foundationレイヤーでは、代わりにcopyItemAtURL:toURL:error:を使用してください。POSIX/ BSDレイヤーでは、代わりにcopyfile(3)OS X Developer Toolsマニュアルページを使用してください。)

copyItemAtURL:toURL:errorとNSFileManagerDelegateを使用して、同じ情報を取得することは不可能のようです。

コードを自分で書き直さずに、10.8で同じ動作を取得するにはどうすればよいですか?

Appleは今、同じものを作るのは簡単でひどいことを知っていますか?

4

1 に答える 1

0

あなたが聞きたい答えではないかもしれませんが[1]、copyfile(3)独自の Obj-C ラッパーでラップしてください。コールバック、特に進行状況を使用して、必要なものをすべて計算できるはずです。HTH。

[1] この一般的な領域のかなりの数の API が非推奨になり、いくつかの新しい API が導入されましたが、それらは不完全に見えます。合理的な推測では、10.9 でさらに増える可能性があります...

于 2012-09-16T02:15:08.107 に答える