在iOS应用程序中集成(使用)iCloud?

在iOS应用程序中集成(使用)iCloud?,ios,iphone,import,upload,icloud,Ios,Iphone,Import,Upload,Icloud,我在我的应用程序中生成了简单的文本文件。问题是我想把这个文本文件上传到iCloud上,这样如果用户安装应用程序并输入他想要的数据,然后agin卸载这个应用程序。然后,下次他再次安装该应用程序时,我想获取他第一次使用同一应用程序时上传的文本文件 在将iCloud集成到我的应用程序时,我面临着一个巨大的问题。 我做了很多研究,但没有得到任何具体的答案。 P.S.=我没有使用核心数据 我只想将应用程序生成的文本文件上传到iCloud驱动器 请一步一步地指导我如何才能做到这一点。我有我的开发者帐户,我对

我在我的应用程序中生成了简单的文本文件。问题是我想把这个文本文件上传到iCloud上,这样如果用户安装应用程序并输入他想要的数据,然后agin卸载这个应用程序。然后,下次他再次安装该应用程序时,我想获取他第一次使用同一应用程序时上传的文本文件

在将iCloud集成到我的应用程序时,我面临着一个巨大的问题。 我做了很多研究,但没有得到任何具体的答案。 P.S.=我没有使用核心数据

我只想将应用程序生成的文本文件上传到iCloud驱动器

请一步一步地指导我如何才能做到这一点。我有我的开发者帐户,我对证书和其他方面有一点了解。但如果有人能告诉我如何实现它

我只想将文本文件上传到ICLOUD,并在再次安装相同的应用程序时再次检索它(即使该应用程序正在其他设备上安装)

ViewController.m

  #pragma mark - Image Pick
- (IBAction)pickImage:(id)sender {

    //select an image

    UIImagePickerController *picker = [[UIImagePickerController alloc]init];
    picker.delegate = self;
    [self presentViewController:picker animated:YES completion:nil];

}

-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
    [self dismissViewControllerAnimated:YES completion:nil];
}

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info
{
    [self dismissViewControllerAnimated:YES completion:nil];

    UIImage* image = [info objectForKey:UIImagePickerControllerOriginalImage];
    self.imageView.image = image;


    //SAVE IMAGE IN iCloud

    AppDelegate* myAppDelegate = (AppDelegate*)[UIApplication sharedApplication].delegate;

    NSURL* cloudeImage = [myAppDelegate applicationCloudFolder:@"thePicture"];
    NSData* imageDate = UIImagePNGRepresentation(image);

    [imageDate writeToURL:cloudeImage atomically:YES];

}


-(void)populateUI
{
    AppDelegate* myAppDelegate = (AppDelegate*)[UIApplication sharedApplication].delegate;

    NSURL* cloudeImageURL = [myAppDelegate applicationCloudFolder:@"thePicture"];
    NSData* imageDate = [NSData dataWithContentsOfURL:cloudeImageURL];
    UIImage* image = [UIImage imageWithData:imageDate];
    if (image) {
        self.imageView.image = image;
    }
    else
    {
        //download image from iCloud
        NSLog(@"Downloading Image...");
        [[NSFileManager defaultManager]startDownloadingUbiquitousItemAtURL:cloudeImageURL error:nil];


    }

}


- (NSMetadataQuery *)query {
    if (!_query) {
        _query = [[NSMetadataQuery alloc]init];

        NSArray *scopes = @[NSMetadataQueryUbiquitousDocumentsScope];
        _query.searchScopes = scopes;

        NSPredicate *predicate = [NSPredicate predicateWithFormat:@"%K like %@", NSMetadataItemFSNameKey, @"*"];
        _query.predicate = predicate;

        if (![_query startQuery]) {
            NSLog(@"Query didn't start... for whatever reason");
        }
    }
    return _query;
}
现在我无法获取我的数据是否已保存,它在哪里得救?我怎样才能找回它


另外,我正在保存一张图片

我遇到了同样的问题,您能显示您尝试过的代码吗@是的,我能。。你能告诉我先生应该做的最起码的事情吗。代码中有太多东西。你能告诉我你需要什么样的屏幕截图吗?我也面临同样的问题。你能展示你试过的代码吗@是的,我能。。你能告诉我先生应该做的最起码的事情吗。代码中有太多东西。你也能告诉我你需要什么样的截图吗。
    -(NSURL*)applicationCloudFolder:(NSString*)fileName
{

    //TEAM ID AND CONTAINER ID

    NSString* teamID = @"V58ESG9PLE";
    NSString* bundelID =[NSBundle mainBundle].bundleIdentifier;
    NSString* containerID = [NSString stringWithFormat:@"%@.%@",teamID,bundelID];

    // URL to Cloud Folder
    NSURL* cloudeRootURL = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:containerID];
    NSLog(@"cloudeRootURL %@",cloudeRootURL);

    NSURL* cloudDocuments = [cloudeRootURL URLByAppendingPathComponent:@"Document"];

    //Apend our file name

    cloudDocuments = [cloudDocuments URLByAppendingPathComponent:fileName];



    return cloudDocuments;
}