为什么meta.gps.gpsLatitude为null?

时间:2019-04-23 16:30:42

标签: dart flutter gps metadata

我使用multi_image_picker库(1)并获得了资产清单。 我需要每个图像的元数据,因此我需要这样做(2),但 {meta.gps.gpsLatitude} {meta.gps.gpsLongitude} 的结果始终为空。我知道代码很好,因为 {meta.gps.gpsLatitudeRef} {meta.gps.gpsLongitudeRef} 是正确的。

如果您知道其他形式,我只需要每个图像的经度和纬度就可以了。

1)我尝试将资产传递到文件并使用exif,但我无法 2)我读了元数据和多图像选择器类,但是它什么也没说

Multi Image Picker类: https://sh1d0w.github.io/multi_image_picker/#/androudtroubleshooting

元数据类: https://pub.dartlang.org/documentation/multi_image_picker/latest/multi_image_picker/Metadata-class.html

(1)
Future <void> loadAssets() async{
    setState(() {
     images = List<Asset>(); 
    });
    List<Asset> resultList = List<Asset>();
    String error = 'No hay error';
    try{
      resultList = await MultiImagePicker.pickImages(
        maxImages: 50, 
        enableCamera: true,
        //options: CupertinoOptions(takePhotoIcon: "chat"),
      );
    }
    on PlatformException  catch (e){
      error = e.message; 
    }
    if (!mounted) return ;
    setState(() {
     images = resultList; 
     _error = error;
     modList(resultList);
    });
  }
(2)
  modList(List resultList) async{
    for (var x=0 ; x < resultList.length; x++){
      Asset asset = resultList[x];
      Metadata meta = await asset.requestMetadata();
      print ("Ref Altitud:${meta.gps.gpsLatitudeRef} Latitud : ${meta.gps.gpsLatitude}" ); 
      print ("Ref Longitud:${meta.gps.gpsLongitudeRef} Longitud : ${meta.gps.gpsLongitude}" );
    } 
  }

0 个答案:

没有答案