在iOS应用程序中集成(使用)iCloud?
我在我的应用程序中生成了简单的文本文件。问题是我想把这个文本文件上传到iCloud上,这样如果用户安装应用程序并输入他想要的数据,然后agin卸载这个应用程序。然后,下次他再次安装该应用程序时,我想获取他第一次使用同一应用程序时上传的文本文件 在将iCloud集成到我的应用程序时,我面临着一个巨大的问题。 我做了很多研究,但没有得到任何具体的答案。 P.S.=我没有使用核心数据 我只想将应用程序生成的文本文件上传到iCloud驱动器 请一步一步地指导我如何才能做到这一点。我有我的开发者帐户,我对证书和其他方面有一点了解。但如果有人能告诉我如何实现它 我只想将文本文件上传到ICLOUD,并在再次安装相同的应用程序时再次检索它(即使该应用程序正在其他设备上安装) ViewController.m在iOS应用程序中集成(使用)iCloud?,ios,iphone,import,upload,icloud,Ios,Iphone,Import,Upload,Icloud,我在我的应用程序中生成了简单的文本文件。问题是我想把这个文本文件上传到iCloud上,这样如果用户安装应用程序并输入他想要的数据,然后agin卸载这个应用程序。然后,下次他再次安装该应用程序时,我想获取他第一次使用同一应用程序时上传的文本文件 在将iCloud集成到我的应用程序时,我面临着一个巨大的问题。 我做了很多研究,但没有得到任何具体的答案。 P.S.=我没有使用核心数据 我只想将应用程序生成的文本文件上传到iCloud驱动器 请一步一步地指导我如何才能做到这一点。我有我的开发者帐户,我对
#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;
}