В момент того, чтобы приносить образ галереи подвижного устройства у меня появляется ошибка: Unable to похвалите asset

Я использую пакет image_picker, чтобы обрабатывать образ и потом показывать ее, когда Вы будете избраны, но, в некоторых случаях Вы функционируете правильно и в других случаях применение блокируется и когда я смотрю окно debug в части Батарейка вызовов появляется у меня эта ошибка: FlutterError (Unable to похвалите asset: /storage/emulated/0/Android/data/com.example.produmax/files/Pictures/scaled_product.jpg introducir la descripción de la imagen aquí

Это кодекс, который я использую, чтобы обрабатывать образ


_seleccionarFoto () async {
  await _procesarImagen(ImageSource.gallery);
}

_tomarFoto () async {
  await _procesarImagen(ImageSource.camera);
}

_procesarImagen(ImageSource tipo) async {
  foto = await ImagePicker.pickImage(
    source: tipo
  );

  if (foto != null) {
    _producto.imagePath = null;
  }

  setState(() { });
}

и это кодекс, чтобы показывать образ:


Widget _mostrarFoto() {
  if (_producto.imagePath != null) {
    final String url = utils.completeUrl(_producto.imagePath);
    return FadeInImage(
      image: NetworkImage(url),
      placeholder: AssetImage('assets/jar-loading.gif'),
      height: ScreenUtil.instance.setHeight(300.0),
      fit: BoxFit.contain
    );
  } else {
    return Image(
      image: AssetImage( foto?.path ?? 'assets/no-image.png'),
      height: ScreenUtil.instance.setHeight(300.0),
      fit: BoxFit.cover,
    );
  }
}

и именно здесь я использую функции _seleccionarFoto () и _tomarFoto () introducir la descripción de la imagen aquí

-1
задан 04.11.2019, 19:04
1 ответ

AssetImage только служит для того, чтобы загрузить imГЎgenes, что estГЎn внутри твоего проекта Flutter. В случае ImagePicker estГЎs получая imГЎgenes, что находятся прямо в устройстве, поэтому этот полный маршрут.

, Чтобы это решать, ты можешь использовать FileImage, так как ты имеешь доступ прямо к file.

Image(
      image: foto != null ? FileImage( foto) : AssetImage('assets/no-image.png'),
      height: ScreenUtil.instance.setHeight(300.0),
      fit: BoxFit.cover,
    );
0
ответ дан 01.12.2019, 12:55