0

在我的应用程序中,我使用相机和照片库来获取 UIImage ...在选择图像后,我需要将其转换为 NSData 并希望将此数据传递给名为 addBlobToContainer:....但它给出了 EXC_BAD_ACCESS .... 我该如何解决这个问题?

这是我的照片库代码...

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    image.image = [info objectForKey:@"UIImagePickerControllerEditedImage"];
    imageData = [NSData dataWithData:UIImageJPEGRepresentation(image.image,1)];
    guid = [Guid randomGuid];
    NSLog(@"%@", guid.description);
    GUID = guid.description;
    NSLog(@"GUID===%@",GUID);
    [self dismissViewControllerAnimated:YES completion:nil];
}

-(void)viewWillAppear:(BOOL)animated
{
     NSLog(@"STRIMAGEDATA===%@",imageData);

     if ([imageData length] != 0)
    {
        NSLog(@"%@",imageData);
       [client addBlobToContainer:newcontainer blobName:GUID contentData:imageData contentType:@"application/octet-stream" withBlock:^(NSError *error)
       {
            if (error)
            {
            NSLog(@"%@",[error localizedDescription]);
            }
              else
              {
              NSLog(@"blob inserted suuccessfully…");
              imageURL = [serviceURL stringByAppendingString:[NSString stringWithFormat:@"%@.jpg",GUID]];
              NSLog(@"IMAGEURL=%@",imageURL);
              }
          }];-->EXC_BAD_ACCESS
    }
}
4

2 回答 2

3

您不是在访问属性,而是在访问属性后面的变量。如果您希望属性自动保留数据,请使用属性设置器,例如,self.imageData = ...而不是imageData = ....

于 2013-03-16T12:46:05.800 回答
1

尝试

self.imageData = UIImageJPEGRepresentation(image.image,1);

于 2013-03-16T12:46:23.687 回答