オプションでクローズドソースフレームワークを使用できるオープンソースプロジェクトに取り組んでいます。クローズドソースフレームワークがプロジェクトに含まれている場合、追加機能があります。ただし、フレームワークがプロジェクトに含まれていない場合でも、プロジェクトは正しくコンパイルされるはずです。
フレームワークがプロジェクトに含まれているかどうかをコンパイル時に確認するにはどうすればよいですか?
基本的に、私はこのようなことをしたいと思います:
#ifdef _MY_FRAMEWORK_EXISTS
#import <MyFramework/MyFramework.h>
#endif
このような2年前の古い質問を見たことがありますが、答えが出ていないので、今は何か新しいものが欠けているかもしれません。
NSClassFromString()
インポートしようとするとコンパイル時に失敗し、存在しないため、実行時にを介してチェックしたくMyFramework
ありません。