Moja aplikacja ma podstawowy db danych, który jest wypełniany przy pierwszym uruchomieniu do użytku w trybie offline. Ta baza danych jest następnie synchronizowana przy każdym uruchomieniu za pomocą db online. Tylko pierwsze uruchomienie zawiera znaczną ilość danych. Aplikacja pobiera również niektóre obrazy z Internetu, które są następnie konwertowane na dane binarne i zapisywane w danych podstawowych do użytku w trybie offline. Dzieje się tak tylko wtedy, gdy użytkownik przejdzie do sekcji zawierającej niektóre obrazy i tylko te obrazy zostaną pobrane (aplikacja nie pobiera wszystkich obrazów naraz, tylko jeśli są one potrzebne).Karta danych podstawowych "nie archiwizuj"
Używam Magical Record.
Nie zapisuję żadnych danych do pliku w czasie wykonywania. Jednak moja aplikacja została odrzucona z tą wiadomością:
Okazało się, że Twoja aplikacja nie jest zgodna z wytycznymi dotyczącymi przechowywania danych w iOS, które są wymagane zgodnie z Wytycznymi oceny App Store.
Zaleca sprawdzanie "Ustawienia> iCloud> Przechowywanie & Kopia zapasowa> Zarządzaj pamięcią masową", ale moja aplikacja nawet się nie wyświetla.
Rozumiem, że powinienem oznaczać podstawowe dane, zamiast wysyłać wiadomości do iCloud, ale nie rozumiem, jak to zrobić. Podobno powinienem wdrożyć coś takiego, ale nie wiem, jak zastosować go do moich podstawowych plików danych.
- (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL {
assert([[NSFileManager defaultManager] fileExistsAtPath: [URL path]]);
NSError *error = nil;
BOOL success = [URL setResourceValue: [NSNumber numberWithBool: YES]
forKey: NSURLIsExcludedFromBackupKey error: &error];
if(!success){
NSLog(@"Error excluding %@ from backup %@", [URL lastPathComponent], error);
}
return success; }
Jeśli MagicalRecord jest używany jako strąk, nie będzie to nadpisane w każdej chwili możemy wyciągnąć aktualizacji dla tej Pod? – Matt