2009-06-26 3 views
1

私はiPhoneアプリケーションを構築しています。私のアプリケーションは、最初にインストールしたときに、App Documentsディレクトリに多数のリソースをコピーします。私がこのアプリを開発している間、iPhone SimulatorのApp Documentsディレクトリにあるファイルを変更するだけで、アプリを再構築することなく簡単にテストすることができます。iPhone Simulator用にビルドする場合、Appディレクトリを同じにしますか?

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

iPhone Simulatorにインストールするとき、アプリケーションのGUIDを強制的に一定にすることは要するに簡単ですか?これは私がVIMのファイルを編集することができ、ビルドを行うときに「消える」ことはありません。私はStackOverflowで答えを探していて、見たことがありません。 how to keep the iphone simulator application directory be the same when run it everytime

しかし、それは非常に同じ質問ではなかった!私は通常これを処理

ありがとう!

答えて

2

私はアプリの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; 
} 
+0

どのようなハック! (褒め言葉として) –

1

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

+0

これは、私がシミュレータの変更を見たいと思うたびに、コードをコンパイルする必要がないので、ビルドをやり直す必要があることを意味します。これはうまくいきますが、私はそういうことをしなくていい方法があることを期待していました。プロジェクトごとに1回しかできないことがあり、それは "スティック"になることがあります。しかし、ありがとう! –

関連する問題