Mam aplikację w sklepie z aplikacjami, która używa danych podstawowych, aby zachować wiele danych. Wyjątkiem jest przechowywanie obrazów. Przechowuję obrazy w podkatalogach w katalogu Documents i przechowuję referencję NSURL do tego obrazu w odpowiednim atrybucie obiektu w głównej składnicy danych.Aktualizacje aplikacji, NSURL i katalog dokumentów
Zauważyliśmy, że gdy aktualizacja trafi do sklepu z aplikacjami, te obrazy nie zostaną znalezione, a zatem nie zostaną wyświetlone, korzystając z referencji zapisanych w poprzedniej wersji aplikacji. Mam podejrzenie, że problem polega na tym, że ponieważ używamy urządzeń programistycznych do testowania, problem ten rozprzestrzenia się, ponieważ katalog w katalogu Aplikacje, z którego korzysta aplikacja deweloperska, różni się od tego, który tworzy/wykorzystuje sklep aplikacji. Zauważyłem różnice między katalogiem App Store dla aplikacji w Aplikacjach i tym, który został utworzony podczas debugowania wersji w Xcode. W związku z tym adres URL przechowywany w danych podstawowych wskazuje na niewłaściwy folder aplikacji. To trochę trudne do debugowania, ponieważ nie mogę pobrać starszej wersji aplikacji, gdy nowa wersja zostanie wydana w sklepie.
Mam kilka pytań. Czy mogę zagwarantować, że w podkatalogu Applications użytkownicy, którzy pobiorą wersje tej samej aplikacji, będą tacy sami, co spowoduje, że nie będzie to dotyczyło urządzeń innych niż deweloperskie?
Czy powinienem przechowywać względne adresy URL obrazów lub ciągi znaków w celu przedstawienia położenia tych zasobów, czy też powinienem zachować zgodność z tym, co ostatecznie jest absolutnym adresem URL?
Dzięki tak dużo, Felipe
Dziękuję bardzo! Właśnie tego potrzebowałem wiedzieć! – flizit
Nie wiedziałem, że nowy katalog aplikacji został utworzony, gdy iTunes instalował aktualizacje: w efekcie otrzymałem dowiązania symboliczne, które bezwzględnie unieważniają ścieżki bezwzględne. Strzeżcie się więc tego zachowania deweloperów iOS! :) –
Ten link jest zepsuty. Wypróbuj: https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/PerformanceTips/PerformanceTips.html –