0

開発者リリースのために保持されていなかったアプリがリリースされました。私たちの顧客は、新しいバージョンのバックエンドを変更するのを待つ代わりに、アプリをリリースしました。これにより、問題が発生するローカルの CoreData ストレージで間違った情報が発生します。

次のような Documents ディレクトリ上のファイルへのローカル パスを保持するフィールドがあるようです。

/var/mobile/Applications/9EE88C79-F060-4EE....C0A/Documents/core23/thumb.png

アプリの更新中に、ローカル デバイス上のアプリが存在するフォルダーが変更されます (次のように見えます!?)。ここで、このフィールドをフィルタリングして/Documents/、アプリがローカル デバイスにインストールされている実際のパスにパスを変更する必要があります。

誰かがそのための便利な解決策を持っていますか? どんな助けでも大歓迎です。

マッドマックスアプリ

4

2 に答える 2

2

-[NSString pathComponents]すべてのパス コンポーネントの配列を返します。誤ったパス文字列でそれを呼び出し、結果の配列から元に戻します。

-[NSString componentsSeparatedByString:(NSString*)]@"/"区切り文字列に渡された場合も同様に機能します。

于 2012-05-08T18:28:39.133 に答える
0

そのパスをハードコーディングすることはできません。ドキュメントのディレクトリ パスを取得するには、次のコードを使用します。

-(NSString *)documentsDirectoryPath {
      NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
      NSString *documentsDirectoryPath = [paths objectAtIndex:0];
      return documentsDirectoryPath;
}
于 2012-05-08T17:10:06.067 に答える