Сохранять ли каталог приложений одинаковым при сборке iPhone Simulator?

StackOverflow https://stackoverflow.com/questions/1046893

  •  20-08-2019
  •  | 
  •  

Вопрос

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

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

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

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

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

Спасибо!

Это было полезно?

Решение

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

+(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;
}

Другие советы

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top