HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iphone – iCloud:我可以忽略那些禁用iCloud的人吗?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我对iCloud的想法有点挣扎,并发布了一个一般的问题 here.我最大的问题是决定是否应该停止将用户的数据放在应用程序沙箱中的旧文档文件夹中.为了说明我的问题:

就我所见,docs没有给出答案.假设我有一个处理不同txt文件的应用程序.一旦我启动我的应用程序,我只需检查是否有任何txt文件在云中:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    NSLog(@"AppDelegate: app did finish launching");
    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];

    self.window.rootViewController = self.viewController;
    [self.window makeKeyAndVisible];

    // (1) iCloud: init

    NSURL *ubiq = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil];
    if (ubiq) {
        NSLog(@"User has iCloud enabled! Let's get the txt files from the cloud.");
        [self loadDocument];
    } else {
        NSLog(@"User doesn't have iCloud enabled. App is thus worthless.");
    }


    return YES;
}

然后我有一个方法来检查云中是否有任何txt文件,如果是,请加载它们.如果没有,我只是在云中创建新的txt文件.

这意味着应用程序不会在文档文件夹中存储任何数据.据我了解,一切都在我的设备的本地iCloud存储(如果用户脱机也可访问)或云端.所以文本文件存在于两个地方:在我的设备和云上.

所以根本不需要在我的本地文档文件夹中存储第三个副本,对吧?或者这是因为我忽略了某些原因而必不可少的?换句话说,如果我向用户提供iCloud,@R_704_10675@用本地文档文件夹? (我可以简单地忽略那些不会注册iCloud的人吗?)

编辑:只是澄清,当我在谈论应用程序的沙箱中的标准文档文件夹时,我的意思是这个:

NSArray *paths =NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
    NSString *documentsDirectory = [paths objectATindex:0];

解决方法

没有理由将文档存储在本地存储和iCloud中.但是,您应该为用户提供关闭iCloud存储的选项.关闭iCloud存储后,您应该只在本地存储中查找文件(与iOS5之前的应用程序一样).最好的方法是尝试隔离需要知道文档存储位置的代码部分,并让它测试iCloud是否可用并启用,并让该段代码返回应存储文档的URl.

更新:@H_502_34@如果你想分开iOS5和iOS4,你只需要测试iOS5功能是否存在.有几种方法可以做到这一点.一种方法是检查:

if([UIDocument class] == nil)

在iOS4上这将是真的,在iOS5上这将是错误的.我不知道你的文件有什么样的数据结构,但你可以做的一件事就是在UIDocument周围创建一个包装器.在这个包装类中,您可以拥有UIDocument结构的实例变量以及IOS4中需要的字段(例如文件的路径).实例化类时,请测试是否启用了iCloud以及UIDocument是否可用,如果可用,请使用它并设置字段.否则,设置其他字段并将uIDocument字段保留为nil.当您需要对“文件”执行操作时,请测试UIDocument字段是否为nil,以及是否采用“旧”方式.否则,只需将请求传递给UIDocument对象.

大佬总结

以上是大佬教程为你收集整理的iphone – iCloud:我可以忽略那些禁用iCloud的人吗?全部内容,希望文章能够帮你解决iphone – iCloud:我可以忽略那些禁用iCloud的人吗?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。