2015-02-06 48 views
1

使用这块代码仅用于访问我的iOS项目中的Adobe文件,但是如何将我的照片上传到Adobe Assets云并保存。我们可以使用适用于iOS和Android的Abode Creative SDK上传Adobe照片中的照片吗?

[[AdobeUXAssetBrowser sharedBrowser]popupFileBrowser:^(AdobeSelectionAssetArray *itemSelections) { 
    NSLog(@"Selected a file"); 
    for(id item in itemSelections) { 

     AdobeAsset *it = ((AdobeSelectionAsset *)item).selectedItem; 

     NSLog(@"File name %@", it.name); 
    [_statuslabel setText:fileDesc]; 

     //If an image, let's draw it locally 
     NSString *fileType = ((AdobeAssetFile *)it).type; 
     if([fileType isEqualToString:@"image/jpeg" ] || [fileType isEqualToString:@"image/png" ]) { 
      NSLog(@"Going to download the image"); 
      [((AdobeAssetFile *)it) getData:NSOperationQueuePriorityHigh 
           onProgress:^(double fractionCompleted) { 
           } 
           onCompletion:^(NSData *data, BOOL fromcache) { 
            NSLog(@"Done downloaded"); 
            UIImage *preview = [UIImage imageWithData:data]; 
           } 
          onCancellation:^(void){ 

          } 
            onError:^(NSError *error) { 

            } 
      ]; 

     } 

    } 
} onError:^(NSError *error) 
{ 
    //do nothing 
    NSLog(@"Error"); 
}]; 

回答

1

你可以找到关于如何上传和在这里使用CreativeSDK从Creative云下载文件教程: https://creativesdk.adobe.com/docs/ios/#/articles/files/index.html

特别的代码与文件上传涉及低于:

NSData *imgData = UIImageJPEGRepresentation(yourImage, 0.8f); 

NSString *dataPath = [NSTemporaryDirectory() stringByAppendingPathComponent:@"foo.jpg"]; 
NSURL *dataURL = [NSURL fileURLWithPath:dataPath]; 

NSError *err; 
BOOL success = [imgData writeToFile:dataPath options:NSDataWritingAtomic error:&err]; 

if (success) { 

    AdobeAssetFolder *root = [AdobeAssetFolder getRootOrderedByField:AdobeAssetFolderOrderByName orderDirection:AdobeAssetFolderOrderDescending]; 

    [AdobeAssetFile create:@"foo.jpg" 
        inFolder:root 
       withDataPath:dataURL 
        withType:kMimeTypeJPEG 
     withCollisionPolicy:AdobeAssetFileCollisionPolicyAppendUniqueNumber 
       onProgress:^(double fractionCompleted) { 
        NSLog(@"Percent complete %f", fractionCompleted); 
       } 
       onCompletion:^(AdobeAssetFile *file) { 
        NSLog(@"Uploaded"); 
       } 
      onCancellation:nil 
        onError:^(NSError *error) { 
         NSLog(@"error uploading %@", error); 
        }]; 
}