prefix.pch ファイルの Info.plist ファイルから値を読み取り、その値に従ってマクロを実行することは可能ですか?
たとえば、Info.plist にブール値のプロパティがある場合、そのプロパティの値が YES の場合UseSomeResource
に作成したいと思います。#define USE_SOME_RESOURCE 1
prefix.pch ファイルの Info.plist ファイルから値を読み取り、その値に従ってマクロを実行することは可能ですか?
たとえば、Info.plist にブール値のプロパティがある場合、そのプロパティの値が YES の場合UseSomeResource
に作成したいと思います。#define USE_SOME_RESOURCE 1
理論的にはそうですが、.pch が配置するのに最適な場所だとは思いません。このマクロをMacros.h
.pch 内にインポートする 、または同様のメカニズム内に配置することをお勧めします
#define USE_SOME_RESOURCE ([[[[NSBundle mainBundle] infoDictionary] objectForKey:@"UseSomeResource"] boolValue])
これは、コンパイル時ではなく実行時に値を決定することに注意してください。コンパイル時に実行する場合は、ビルド フェーズの一部として、Info.plist を読み取り、プロジェクトの一部として含まれるヘッダー ファイルを作成するスクリプトを作成する必要がある場合があります。これは非常に迂遠な方法のように思われるため、実行時の代替方法を強くお勧めします。