Tag: icloud

iCloud:在IOS和OSX之间同步核心数据

我尝试在IOS和OSX之间同步核心数据。 在这两个应用程序我有相同的configuration: 和相同的权利: 我也使用相同的代码为商店协调员同名的sqlite文件和url: NSManagedObjectModel* managedModel = [NSManagedObjectModel mergedModelFromBundles:nil]; NSPersistentStoreCoordinator* storeCooordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:managedModel]; //-> start iCloud dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ NSURL* applicationFilesDirectory = [JHDCoreDataDAO applicationFilesDirectory]; NSURL* storeURL = [applicationFilesDirectory URLByAppendingPathComponent:DATABASE_NAME]; if(!storeURL) { NSLog(@"Error reading applicationFilesDirectory for given sqlite resouce"); } NSString* containerIdentifier = [NSString stringWithFormat:@"%@.%@",TEAM_IDENTIFIER,APP_IDENTIFIER]; NSURL* iCloud = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:containerIdentifier]; NSString *iCloudEnabledAppID = […]

是否有可能在iOS 7或iOS 8模拟器中使用NSUbiquitousKeyValueStore?

我正在testing使用iCloud键值存储的应用程序。 一切正在物理设备上工作,但键值存储不保存任何使用模拟器。 从我所了解的基于这个文件的文件来看,iCloudtesting在模拟器上是可行的,这应该是可行的。 (顺便说一下,我已经在模拟器上configuration了iCloud) 我用下面的代码使用Xamarin / Monotouch: var store = NSUbiquitousKeyValueStore.DefaultStore; store.SetString ("TestKey", "test123"); store.Synchronize (); 当以后或之后立即读取值时,该值始终为空。 var store = NSUbiquitousKeyValueStore.DefaultStore; var testValue = store.GetString ("TestKey"); //*** testValue always null using the simulator *** 是否有可能在iOS模拟器中testingiCloud的键值存储?

在iOS(UIDocumentPickerViewController)上保存一个iCloud驱动器安全范围的URL

我试图保存从iCloud文档select器(UIDocumentPickerViewController)返回的安全范围的URL 该文件指出: 如果URL不是无处不在的URL,则使用bookmarkDataWithOptions:includingResourceValuesForKeys:relativeToURL:error:方法将书签保存到文件中,并传入NSURLBookmarkCreationWithSecurityScope选项。 调用此方法将创build一个包含安全范围的URL的书签,您可以使用该URL来打开该文件,而无需用户进一步干预。 但是,编译器说iOS不支持NSURLBookmarkCreationWithSecurityScope。 任何人都知道这里发生了什么….?

如何通过iCloud同步钥匙串

我不想为我的应用程序在钥匙串中存储敏感数据。 我也想这样使用iCloud同步设备。 根据苹果这是可能的: iCloud Keychain是否可以与第三方应用程序一起使用? 是。 开发人员可以更新他们的应用程序以使用iCloud Keychain。 这些应用程序保存的密码在所有使用该应用程序并使用iOS 7.0.3或更高版本或OS X Mavericks v10.9或更高版本的设备上保持最新。 但是,我找不到有关应用程序需要什么的文档。 如果用户启用了iCloud Keychain,钥匙串的所有内容是否会同步?

将iCloud数据迁移到本地存储,并停止响应iCloud

我非常接近在我的应用程序中完成iCloud和Core Data的实现。 这是一个仅适用于iOS 7的应用程序。 我在应用程序中向用户提供一个选项,以UISwitch的forms说“使用iCloud On或Off”。 该应用程序启动,并询问用户是否要使用iCloud,这可以稍后在应用程序中更改。 我有从本地存储(如果存在)迁移到iCloud的数据。 我正在努力的一个方面是将数据从iCloud商店迁移到本地商店。 场景: – 用户A有一个iPhone与我的应用程序和一些数据 – 用户A下载应用程序到iPad,select使用iCloud,但稍后,决定他们不想在iPad上同步。 所以他们closures了应用程序内的iPad iCloud同步。 在这一点上, 我的理解是,用户会希望数据仍然存在,但是从幕后来看,现在是“LOCAL”而不是“iCloud”数据,这意味着来自另一个设备的条目将不会同步到这个设备,反之亦然 所以我正试图做到这一点。 问题 我可以将数据从iCloud迁移到本地存储,但问题是,因为iCloud仍然在设备上启用,下次运行应用程序时,我可以看到iCloud在应用程序内被禁用,但控制台仍然显示使用本地存储1,然后0和iPhone中的任何数据同步到iPad,即使使用iCloud UISwitch非常清楚。 以下是进行迁移的主要代码: – (void)migrateiCloudStoreToLocalStore { NSLog(@"Migrate iCloudToLocalStore"); NSPersistentStore *store = self.persistentStoreCoordinator.persistentStores.lastObject; //NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"Envylope.sqlite"]; NSURL *storeURL = [self.persistentStoreCoordinator.persistentStores.lastObject URL]; NSLog(@"Current Store URL (before iCloud to Local migration): %@", [storeURL description]); NSDictionary […]

当涉及多个设备时,CoreData iCloud Migration会“丢失”数据

我最近有一些更新我的应用程序的主要问题。 许多用户在迁移到最新版本后抱怨dataloss。 几个小时后,我仍然不确定发生了什么,但我有一个理论,我想确认。 在苹果公司的文档中说: 迁移和iCloud 对于与给定的NSPersistentStoreUbiquitousContentNameKey关联的每个模型版本,对商店的更改都将被独立logging和保存。 如果模型版本匹配,则使用给定的NSPersistentStoreUbiquitousContentNameKeyconfiguration的持久性存储只能与其他设备数据上的存储同步数据。 如果将使用NSPersistentStoreUbiquitousContentNameKey选项configuration的持久性存储迁移到新的模型版本,则商店的源自当前设备的更改历史logging也将被迁移,然后与任何其他使用该新模型版本configuration的设备合并 这是否意味着当我有多个设备并迁移第一个。 所有非源自该设备的数据都会“丢失”,因为型号版本不再匹配,直到其他设备也更新到最新版本,并且其数据和更改历史logging被迁移到新的型号版本。 因为那似乎是我能复制问题的一个风景。 这是真的吗? 任何帮助和见解,赞赏…

UIDocument loadFromContents失败,EXC_BAD_ACCESS

我有一个非常简单的IOS应用程序使用iCloud文档存储。 一切正常,然后在某些时候,我开始在至less一个iCloud文档的文档加载方法中遇到EXC_BAD_ACCESS错误,虽然大多数文件加载得很好。 – (BOOL)loadFromContents:(id)contents ofType:(NSString *)typeName error:(NSError *__autoreleasing *)outError { file = (NSFileWrapper*) contents; NSFileWrapper *infoFile = [[file fileWrappers] objectForKey:InfoFile]; NSData *infoData = [infoFile regularFileContents]; if(nil != infoData) { NSPropertyListFormat format = NSPropertyListBinaryFormat_v1_0; NSError *propertyListError; // EXC_BAD_ACCESS occurs here NSDictionary *dictionary = [NSPropertyListSerialization propertyListWithData:infoData options:NSPropertyListImmutable format:&format error:&propertyListError]; if(nil == propertyListError) { _name = [dictionary objectForKey:@"name"]; […]

iCloud在其他用户之间共享

据我所知,iCloud就像是一个个人存储,而且你使用自己的Apple ID。 我想问的是,用户是否可以存储图像并与其他用户共享? 这意味着像DropBox的东西。 您将file upload到您的DropBox帐户,将有一个允许其他人下载该文件的url。 iCloud有这种function吗?

如何检测用户是否login到iCloud?

我如何检测用户是否login到iCloud? 检查URLForUbiquityContainerIdentifier的返回值是非常有限的: 1)它不能区分未签名的用户与其他情况,例如iCloud未启用。 2)如果用户在游戏仍在后台运行时从“设置”应用程序login到iCloud,则不会改变其行为,然后返回到应用程序尝试访问iCloud服务。 有一种更可靠的方式来检测用户是否login?

如何检测用户是否为我的应用程序启用了iCloud?

我已经开发了一个启用了iCloud的iPhone应用程序,但我面临的问题是,即使用户closuresiCloud备份为我的应用程序,然后也取回了iCloud,并反映在我的其他设备的变化,所以我想知道如何我可以得到我的应用程序是否启用iCloud。 它专门为应用程序不为设备,如果设备是启用iCloud,但我的应用程序被closures,那么它不应该采取任何备份,请帮助我的家伙。 提前感谢。