Сохранить каталог приложений при сборке для iPhone Simulator? - PullRequest
1 голос
/ 26 июня 2009

Я создаю приложение для iPhone, и мое приложение копирует кучу ресурсов в каталог документов приложения при первой установке. Разрабатывая приложение, я просто изменяю файлы в папке «Документы» приложения для симулятора iPhone, чтобы упростить тестирование без необходимости перестраивать приложение.

Но когда я перестраиваю приложение, GUID приложения, который используется в имени его установочного каталога, изменяется, и все открытые мной файлы теперь указывают на недопустимый каталог.

Итак, короче говоря, можно ли заставить GUID приложения оставаться постоянным при установке на симуляторе iPhone? Это позволило бы мне редактировать файлы в VIM и не позволять им «исчезать» при сборке. Я искал ответ в StackOverflow и не видел ни одного .... Ближайшим было следующее:

как сохранить каталог приложения-симулятора iphone одинаковым при его каждом запуске

Но это был не тот же вопрос!

Спасибо!

Ответы [ 2 ]

2 голосов
/ 14 сентября 2009

Я никогда не находил способ сделать это с помощью руководства приложения, но в конечном итоге я нашел способ обойти. Все, что я сделал, это поместил все свои ссылки на каталог установки приложений в функцию и изменил эту функцию, чтобы, если я работаю в симуляторе, он возвращал жестко закодированный каталог в моей системе… оставайтесь прежними, даже если я переустановлю приложение, чтобы я мог редактировать свои файлы, не теряя их при сборке.

+(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;
}
1 голос
/ 26 июня 2009

Обычно я справляюсь с этим, создавая Копирование файлов или Запуск сценария Фаза сборки, запускаемая после стандартного процесса сборки. Фаза компиляции будет пропущена, если в исходный код не было внесено никаких изменений, поэтому будут выполняться только ваши фазы сборки. Затем убедитесь, что ваш редактор (Photoshop / vim и т. Д.) Редактирует исходные файлы, а не файлы в каталоге сборки.

...