pickPhoto function

Future<String?> pickPhoto(
  1. bool isCam
)

Implementation

Future<String?> pickPhoto(bool isCam) async {
  ImagePicker _picker = ImagePicker();
  if (!isCam) {
    final granted = await PermissionsHelper.requestPermission(
        Platform.isIOS ? [Permission.photos] : [Permission.storage]);
    if (!granted) {
      return null;
    }
  } else {
    final granted =
        await PermissionsHelper.requestPermission([Permission.camera]);
    if (!granted) {
      return null;
    }
  }
  final XFile? photo = await _picker.pickImage(
      source: isCam ? ImageSource.camera : ImageSource.gallery,
      imageQuality: 80);
  if (photo != null) {
    return NimCore.instance.nosService
        .upload(filePath: photo.path, mimeType: 'image/jpeg')
        .then((value) {
      if (value.isSuccess) {
        return value.data;
      }
      return null;
    });
  }
  return null;
}