5

/ usr / include内のすべてのヘッダーは、Mac App Storeの送信に関してパブリックAPIの一部と見なされることが保証されていますか?

たとえば、ファイル/usr/include/copyfile.hについて考えてみます。

このファイルのコメントには、「この実装は不完全であり、インターフェイスは将来のリリースで変更される可能性があります」と書かれています。これにより、ヘッダーが非公開になりますか?ヘッダーが公開されていると見なされるかどうかを判断するにはどうすればよいですか?

4

2 に答える 2

5

文書化されていれば公開されます。システムには、プライベート API を参照する .h ファイルがたくさんあります。それは、それが店で安全かどうかを知る方法ではありません. フレームワークのドキュメントに記載されているので、ストアセーフです。

于 2011-06-21T12:11:00.530 に答える
3

このドキュメント ページの下部のセクションをお読みください。

抜粋:

Mac OS X には、/usr/lib ディレクトリとそのサブディレクトリに多くの動的ライブラリが含まれています。動的共有ライブラリは、.dylib 拡張子によって識別されます。ライブラリのヘッダー ファイルは /usr/include にあります。

ここでの含意は、.dylibOS X に含まれるライブラリがアプリケーションで使用するのに公正なゲームであるということのようですが、Lion などで特定のバージョンのライブラリがあることを保証するものではないことに注意する必要があります。できる限り一般的なバージョンを含めてください。

@Danが言ったように、使用しても問題ないライブラリにヒントを与えるもう1つのことは、マンページがある場合です。copyfileには man ページがあるので、使用しても問題ありません (使用方法が示されているためです!)。さらにあいまいにするには、getattrlistのman ページを調べて、「copyfile」を検索してください。ボリューム機能について読み取ることができるフラグの 1 つは、2 番目のcopyfile() API のサポートを示します。したがって、この場合、2 つの copyfile() API があり、マンページのある方のみを使用できます。もう 1 つは、非公開で文書化されていないものとしてここでマークされているためです。

Framework フォルダーに含まれておらず、またはマンページと一致しないヘッダーは、.dylib通常、使用を避けます。

于 2011-09-06T00:16:20.260 に答える