私のアプリケーションには2つのターゲットがあります。
それぞれには独自のInfo.plistファイルとカスタムフォルダが含まれています(グループではなく参照として)。
ターゲットをシミュレータで実行すると、フォルダがバンドルに正しく挿入され、その中のファイルが問題なく読み込まれます。
これは、フォルダのパスを読み込むためのコードです:私は、デバイス上のアプリケーションをデバッグしようとした場合iPadバンドルにフォルダを追加すると、デバイスではなくシミュレータで動作します
NSBundle* mainBundle;
NSString *fileFolder;
mainBundle = [NSBundle mainBundle];
NSLog(@"Bundle path: %@", [mainBundle bundlePath]);
NSLog(@"Folder name: %@", [mainBundle objectForInfoDictionaryKey:@"CustomFolder"]);
NSString *folder = [mainBundle objectForInfoDictionaryKey:@"CustomFolder"];
fileFolder = [[[NSBundle mainBundle] pathForResource:folder ofType:nil] retain];
NSLog(@"Folder: %@", fileFolder);
、バンドルのパスおよびフォルダ名は正しいですが、フォルダの文字列がnullです。
私は自分のアプリケーション製品をチェックしました。そこにはすべてのファイルを含む正しいフォルダがあります。
問題は何ですか?それは読み取り権限の問題ですか?
UPDATE のiPad Simulatorで実行されている結果のパスがあり、この
/* /ライブラリ/ Application Support/iPhoneシミュレータ/ 4.3.2 /アプリケーション/ 8337B9E5-1BFE-4A17-969E-E3E6E43193D6/
UPDATE 2 MyApp.app/CustomFolder/問題は、私は、「任意の追加フォルダのフォルダ参照を作成します」のフォルダを追加したことです。
私はpathForResourceをstringByAppendingPathComponentに置き換えましたが、問題は今度はsubpathsOfDirectoryAtPathに残っています。
大文字と小文字は区別されますか? Mac(iOSシミュレータを含む)では、ファイルシステムは大文字と小文字は区別されませんが、デバイス上にあります。 –
フォルダは、名前とコードの両方の参照で大文字と小文字を区別します。 – pasine