从BOX SDK iOS下载一个文件
我需要从BOX sdk下载一个图像到我的应用程序中。我已经使用dropbox sdk实现了这一点-似乎比Box sdk更简单。无论如何-我有一个委托方法返回文件名,但我如何实际下载文件从BOX SDK iOS下载一个文件,ios,download,sdk,box,Ios,Download,Sdk,Box,我需要从BOX sdk下载一个图像到我的应用程序中。我已经使用dropbox sdk实现了这一点-似乎比Box sdk更简单。无论如何-我有一个委托方法返回文件名,但我如何实际下载文件 - (void)itemsViewController:(BOXItemsViewController *)itemsViewController didTapFile:(BOXFile *)file inItems:(NSArray *)items { NSLog(@"Did tap file
- (void)itemsViewController:(BOXItemsViewController *)itemsViewController didTapFile:(BOXFile *)file inItems:(NSArray *)items {
NSLog(@"Did tap file: %@", file.name);
BOXFileDownloadRequest *downloadRequest;
BOXContentClient *contentClient;
contentClient = [BOXContentClient defaultClient];
NSOutputStream *outputStream = [[NSOutputStream alloc] initToMemory];
downloadRequest = [_contentClient fileDownloadRequestWithID:file.name toOutputStream:outputStream];
[_downloadRequest performRequestWithProgress:^(long long totalBytesTransferred, long long totalBytesExpectedToTransfer) {
} completion:^(NSError *error) {
if (error == nil) {
NSData *data = [outputStream propertyForKey:NSStreamDataWrittenToMemoryStreamKey];
UIImage *img = [UIImage imageWithData:data];
_uiiv_logo.image = img;
}
else{
}
}];
}
我最终选择了BOXItem来获得“id”
- (void)itemsViewController:(BOXItemsViewController *)itemsViewController didTapFile:(BOXFile *)file inItems:(NSArray *)items
{
BOXItem *item = file;
BOXContentClient *contentClient = [BOXContentClient defaultClient];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0]; //Get the docs directory
NSString *localFilePath = [documentsPath stringByAppendingPathComponent:@"NSURLSession.png"];
BOXFileDownloadRequest *boxRequest = [contentClient fileDownloadRequestWithID:[item.JSONData valueForKey:@"id"] toLocalFilePath:localFilePath];
[boxRequest performRequestWithProgress:^(long long totalBytesTransferred, long long totalBytesExpectedToTransfer) {
// Update a progress bar, etc.
NSLog(@"progress %lld",totalBytesTransferred);
} completion:^(NSError *error) {
// Download has completed. If it failed, error will contain reason (e.g. network connection)
if (error) {
NSLog(@"error %@",[error description]);
[[NSNotificationCenter defaultCenter] postNotificationName:@"customUpdateBG" object:nil];
}
}];
}
你发布的代码有什么问题?没有下载。我试着切换到BoxItem,让jsondict看到url,但他们重新链接了。我想我需要启用共享。我试过了,URL现在显示出来了,但还是没有下载。