Приложението е отхвърлено за маркиране на iCloud Backup

Моето приложение има няколко покупки в приложението, които изтеглят видео съдържание в папката /Documents. Наскоро изпратих актуализация на приложението и бях отхвърлен, защото не маркирах видеофайловете да не се архивират в iCloud. Успешно внедрих маркирането, но все още съм объркан от това изявление в документацията на Apple:

Важно Новият атрибут „не архивирайте“ ще се използва само от iOS 5.0.1 или по-нова версия. В iOS 5.0 и по-стари версии приложенията ще трябва да съхраняват данните си в /Library/Caches, за да избегнат архивирането им. Тъй като този атрибут се игнорира на по-стари системи, ще трябва да се уверите, че приложението ви отговаря на Указанията за съхранение на данни на iOS за всички версии на iOS, които вашето приложение поддържа.

Приложението ми поддържа iOS 3.2 и по-нови, така че трябва ли да отчитам различни версии на iOS в моя код или прилагането на флага за не архивиране е достатъчно, за да премине за одобрение от App Store? Наистина не искам да откажа поддръжката за версии по-ранни от 5.0.1.

Моля помогнете!


person reaelm32    schedule 24.03.2012    source източник
comment
технологията, която не е за маркиране, понякога е трудна за намиране (така че ето връзка за всеки, който се окаже тук, за да я търси): developer.apple.com/library/ios/#qa/qa1719/_index.html   -  person bigkm    schedule 16.05.2012


Отговори (2)


Правилното поведение за вашето приложение е да поставите файловете в библиотеката/кешовете на операционни системи преди 5.0.1 и да ги поставите в документи с флага „не архивирайте“ в 5.0.1 или по-нови. недостатъкът на използването на библиотека/кешове е, че файловете ще бъдат изтрити, когато потребителят надстрои приложението (така че е по-добре да може да ги изтегли отново). Но предимството е, че няма да раздувате резервните им копия с файлове, които не трябва да се архивират.

Обърнете внимание, че на 5.0.1 или по-нова, ако откриете, че файловете не са там, трябва да проверите тяхното местоположение преди 5.0.1, преди да ги изтеглите, в случай че потребителят току-що е надстроил своята операционна система.

person Lily Ballard    schedule 24.03.2012
comment
Значи ще бъда отхвърлен, освен ако не отчитам различни версии? Това изглежда някак нелепо. Съхраняването на файлове в /Documents беше добре преди iOS 5. Единственият проблем щеше да бъде в 5.0.0, където файловете все още ще се архивират технически в iCloud, но това не е ли грешка на Apple? - person reaelm32; 24.03.2012
comment
@reaelm32: Не мога да кажа със сигурност дали ще бъдете отхвърлен, но това, което описах, е какво трябва да направите за най-доброто потребителско изживяване. И не, /Documents не беше добре преди iOS 5, Apple току-що стана по-строг относно отхвърлянето на приложения, които архивират файлове, които не се нуждаят от архивиране, приблизително по същото време, когато въведоха новия флаг без архивиране в 5.0. 1. - person Lily Ballard; 24.03.2012
comment
Добре и не добре са донякъде без значение според мен за @reaelm32 (мисля). Проблемът е в БОЛКАТА, включена в промяната на поведението. Сигурен съм, че всичко ще бъде страхотно, след като всички актуализираме нашите методи за запазване на документи :-/ - +1 за кратко обяснение. - person Damo; 24.03.2012
comment
Форумът изглежда има противоречиви отговори на този проблем навсякъде. Някои казват, че маркирането е достатъчно, докато други казват, че трябва да се вземат предвид различните версии. Ще се опитам да го изпратя само с маркиране и да видя какъв е резултатът. - person reaelm32; 24.03.2012
comment
Също така е важно да се отбележи, че трябва да използвате различен флаг в 5.1, тъй като традиционният флаг „не архивиране“ е отхвърлен. - person Benjamin Mayo; 24.03.2012

Проблемната област е iOS 5.0, която поддържа iCloud, но не разпознава атрибута „не архивиране“. В този случай всички данни на приложението в директорията с документи вероятно ще бъдат архивирани в iCloud. За версии на iOS под 5.x:

  • резервното копие на iCloud не е валидно.
  • флагът „не архивирай“ не е уместен. Няма да изведе никакви предупреждения по време на компилация.

Следователно данните могат да се съхраняват в директорията с документи, като към съдържанието (файлове/папки) се добавя подходящо флаг "не архивирайте" за всички версии. Проблемът е само за версия 5.0.

person iCoder    schedule 11.04.2012