Używam tego szablonu Xcode dla danych podstawowych.iphone - katalog aplikacji coredata
Na delegata, mam tej metody:
- (NSURL *)applicationDocumentsDirectory {
return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
}
ale to wymaga iOS4.
Próbuję dostosować aplikację do wersji 3.0.
Tak, mam konwertowane tej metody:
- (NSURL *)applicationDocumentsDirectory {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
return [NSURL URLWithString:documentsDirectory];
}
ale kiedy CoreData próbuje użyć adresu URL sklepu na
NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"MyFile.sqlite"];
if (![persistentStoreCoordinator_ addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&error]) {
ulega awarii na linii IF z komunikatem:
Magazyny SQL CoreData obsługują tylko adresy URL plików (dostałem /var/mobile/Applications/BB312A7E-6AE1-4BA2-AD87-6B96D8855CC6/Documents/MyFile.sqlite). '
ale StoreURL to NSURL!
Jakieś wskazówki? Dzięki
dzięki! Jesteś meżczyzną!!!! – SpaceDog
Docelowa liczba moich aplikacji wynosi 8,0, co zadziałało w tym przypadku! Dzięki! –