1

私は iPhone アプリを作成しています。私のアプリは、最初のインストール時に一連のリソースをアプリの Documents ディレクトリにコピーします。アプリの開発中は、アプリの Documents ディレクトリにあるファイルを iPhone Simulator 用に変更するだけで、アプリを再構築しなくても簡単にテストできるようになります。

しかし、アプリを再構築すると、アプリのインストール ディレクトリ名に使用されているアプリの GUID が変更され、開いていたファイルが無効なディレクトリを指しています。

要するに、iPhone シミュレーターにインストールするときにアプリの GUID を強制的に一定にする方法はありますか? これにより、VIM でファイルを編集することができ、ビルド時にファイルが「消える」ことはありません。StackOverflow で回答を検索しましたが、何も見たことがありません... 最も近いのは次のとおりです。

毎回実行するときにiphoneシミュレーターアプリケーションディレクトリを同じに保つ方法

しかし、まったく同じ質問ではありませんでした。

ありがとう!

4

2 に答える 2

2

app guidを使用してこれを行う方法を見つけたことはありませんでしたが、最終的には回避策を見つけました。私がしたのは、アプリケーションのインストールディレクトリへのすべての参照を関数に入れ、その関数を変更して、シミュレータで実行している場合、システムにハードコードされたディレクトリを返すようにすることだけでした。そうすれば、ディレクトリは常にアプリを再インストールしても同じままなので、ビルド時にファイルを失うことなく編集できます。

+(NSString *) appDocsDir
{
#if TARGET_IPHONE_SIMULATOR

        NSString* result = @"/Users/brad/ezappdir";
#else

        NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
                                                             NSUserDomainMask, 
                                                             YES); 
        NSString* result = [paths objectAtIndex:0];
#endif

    return result;
}
于 2009-09-14T01:40:37.560 に答える
1

私が通常これを処理する方法は、標準のビルドプロセスの後に実行されるファイルのコピーまたはスクリプトビルドフェーズの実行を作成することです。ソースに変更が加えられていない場合、コンパイルフェーズはスキップされるため、ビルドフェーズのみが実行されます。次に、エディター(Photoshop / vimなど)がビルドディレクトリ内のファイルではなく、元のファイルを編集していることを確認します。

于 2009-06-26T02:42:11.417 に答える