С момента покупки лицензии разработчика приложение для iphone не может написать .plist - PullRequest
1 голос
/ 08 мая 2011

Я недавно заплатил 99 долларов за лицензию на разработку, чтобы иметь возможность загружать мое приложение на мой iPhone.До этого мое приложение могло записать простой файл names.plist в каталог Documents моего приложения в симуляторе.Я смог запустить приложение позже в симуляторе, и некоторый текст будет сохранен в файле.С момента приобретения лицензии и установки приложения на моем телефоне приложение выполняет запись в каталог «Песочница» Документов на симуляторе или телефоне.Похоже, лицензия разработчика что-то изменила.

Код того, когда он работал, не изменился и правильно вернул каталог документов песочницы.Это ниже.Я также включил печать NSLog того, что приложение теперь показывает для каталога и имени файла с тем же кодом.Это для файла с именем «Documentsname.plist», а не «names.plist», который я хочу.Я очень ценю любую помощь!Спасибо.

//.h
#define username @"name.plist"

// .m -- Define and return this App's sandbox iOS Documents Directory
- (NSString *)userFilePath {

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    NSString *documentsDirectory = [paths objectAtIndex:0];

    return [documentsDirectory stringByAppendingFormat:username];

}

Ниже приведен NSLog пути, по которому производится запись, а затем чтение:

/Users/<user>/Library/Application Support/iPhone Simulator/4.3.2/Applications/AF36A4E1-5387-4B10-8F3A-A69AAA307FE4/Documentsname.plist

Ответы [ 2 ]

1 голос
/ 08 мая 2011
return [documentsDirectory stringByAppendingPathComponent:username];

Вы просто добавляете строку, а не путь. Добавляя «компонент пути», он автоматически добавляет / удаляет необходимые / ненужные слэши.

Я бы также рекомендовал не объединять имя пользователя и ".plist".

#define username @"name"

return [[documentsDirectory stringByAppendingPathComponent:username]stringByAppendingString:@".plist"];
0 голосов
/ 08 мая 2011

Как насчет простого добавления отсутствующего "/"?

#define username @"/name.plist"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...