我正在使用UIImagePickerController从设备获取图像。我已执行以下步骤:


获得许可:
隐私权-图片库使用说明-info.plist
UIImagePickerController的实例已创建并显示。代表分配给自己。相机或库选项由UIAlertController提供。

-(void) openGallery {
    UIImagePickerController *picker = [[UIImagePickerController alloc] init];
    picker.delegate = self;
    picker.allowsEditing = YES;

    UIAlertController *actionSheet = [UIAlertController alertControllerWithTitle:nil message:nil preferredStyle:UIAlertControllerStyleActionSheet];

    [actionSheet addAction:[UIAlertAction actionWithTitle:@"Cancel" style:UIAlertActionStyleCancel handler:^(UIAlertAction *action) {
    }]];

    [actionSheet addAction:[UIAlertAction actionWithTitle:@"Camera" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
        // take photo button tapped.
        picker.sourceType = UIImagePickerControllerSourceTypeCamera;
        [self presentViewController:picker animated:YES completion:NULL];
    }]];

    [actionSheet addAction:[UIAlertAction actionWithTitle:@"Photo Library" style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
        // PhotoLibrary
        picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
        [self presentViewController:picker animated:YES completion:NULL];
    }]];

    [self presentViewController:actionSheet animated:YES completion:nil];
}

在委托上,图像已到达,但是当我尝试将其转换为base64后将其上传到服务器时,AFNetworking抛出错误:


  错误域= PlugInKit代码= 13“查询已取消” UserInfo = {NSLocalizedDescription =查询已取消}
  使用Objective C Xcode 9.3 iOS 11


#pragma mark- UIImagePicker Delegate

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{
    UIImage *chosenImage = info[UIImagePickerControllerEditedImage];

    [picker dismissViewControllerAnimated:YES completion:NULL];

    [self.view setUserInteractionEnabled:NO];
    [self uploadThemeServiceCall: chosenImage];
}



我尝试创建OS_ACTIVITY_MODE以在环境变量中禁用,但是它不起作用。我尝试了其他可用的解决方案,但仍然无法正常工作。工作正常,但现在不行了。

最佳答案

答:)请确保对象selectedImage不是nil。
B :)使用NSData *imageData = UIImageJPEGRepresentation(imageObject , 1)chosenImage转换为NSData。使用此imageData作为ur NSUrlRequest正文。

还请在此处显示功能uploadThemeServiceCall的代码。

10-08 05:27