sqlite dbをカスタムバンドルに入れて、複数のプロジェクトでそのバンドルを使用したいとします。バンドル内のsqlite dbパスにアクセスしますか?
私はMac OS X FrameWork &ライブラリ - >バンドルから新しいターゲットを作成しました。ターゲットをビルドして、sqlite dbをバンドルに入れました。 バンドルをiOSプロジェクトに追加し、そこからdbを読み込もうとしました。
ここで問題が発生します:バンドルを取得してその識別子を読み取ることができますが、dbのパスを取得しようとするとnull戻り文字列が返されます。
デシベルパス読むためのコード:
NSBundle *myDbBundle = [NSBundle bundleWithPath:[[NSBundle mainBundle]pathForResource:@"myDbBundle" ofType:@"bundle"]];
NSLog(@"BundleIdentifier:%@",[myDbBundle bundleIdentifier]);
NSString *databasePath = [myDbBundle pathForResource:@"myDbName" ofType:@"sqlite"];
NSLog(@"DataBasePath:%@",databasePath);
どれ暗示し、この問題に関するドキュメントやチュートリアルがウェルカムです。
更新: 私はそれを読み込もうとすると失敗するのですが、バンドルをロードできないようです。
コード:
NSError *error;
NSLog(@"LoadBundle:%@",[myDbBundle loadAndReturnError:&error][email protected]"yes":@"no");
NSLog(@"Error:%@",[error localizedDescription]);
だから、本当のproblmeは私がiOSアプリから読み取ることができるのsqliteのDBと魔女を配置魔女でバンドルを作成するにはどうすればよいのですか?バンドルを作成するには、Mac OS Xでxcodeテンプレートを使用しましたので、ビルド設定で何かを変更する必要があると思いますが、何が分からないのでしょうか。 >リソース - - >設定バンドル さて、ここで私が何をしたか、まず、新しいファイル:
あなたは(ファインダーなどで)バンドル自身の中で見ればそこにDBファイルのですか? –
はい、あります。 –