Загрузка изображения в пакет? - PullRequest
0 голосов
/ 10 ноября 2009

Я отображаю текст и изображения в UIWebView. Содержание не всегда одно и то же. Я получаю доступ к изображениям в контенте, используя путь к пакету. Для обновления контента между версиями я бы хотел, чтобы пользователи могли загружать новый контент (текст и изображения). Этот новый контент также будет отображаться в UIWebView. Проблема в том, что мне придется использовать путь к диску, а не мой общий шаблон использования пути к комплекту. Если нет способа упаковать образ во время выполнения в комплект.

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

Кто-нибудь может дать некоторое представление о том, как это может работать или лучший подход?

Ответы [ 2 ]

5 голосов
/ 11 ноября 2009

Насколько я знаю, вы не можете перепаковать комплекты на iPhone, как только ваше приложение будет выпущено в App Store. Поэтому идите другим путем и поместите данные из пакета в файловую систему, чтобы вы могли изменить их во время выполнения.

Моя обычная техника для этого материала:

  • связать исходные данные
  • есть подпрограмма, которая проверяет наличие версионного файла в файловой системе iPhone при запуске
  • если эта подпрограмма не находит текущую версию файла, скопировать все данные в файловую систему iPhone
  • ссылается на данные из файловой системы моего приложения, а не использует путь к пакету

Итак, по сути, ваш пакет - это просто механизм доставки, способ предварительно загрузить файловую систему с тем материалом, который вам понадобится. Как только он окажется в файловой системе, вы сможете изменить все, что пожелаете.

1 голос
/ 11 ноября 2009

Согласитесь с Бенджамином - вы не можете изменить содержимое вашего пакета.
Вместо этого вы можете (и должны) сохранить загруженное содержимое в папку «Документы» своей изолированной программной среды. Вы можете получить путь к нему следующим образом:

// Look in Documents for an existing plist file
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0]; 

Кроме того, содержимое этой папки сохраняется во время обновлений, поэтому может не требоваться помещать загружаемый дополнительный контент в комплект приложений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...