谷歌地图android - 无法从BitmapDescriptorFactory.fromAsset设置地图图标

时间:2018-02-21 06:08:44

标签: android kotlin flutter

我正在尝试使用以.bmp文件提供的标记图像来使用自定义标记。我正在使用Flutter构建跨平台应用程序,这是Android的本机代码。该图像来自flutter项目中pubspec.yaml中的资源。

  marker = map
       .addMarker(MarkerOptions()
       .position(annotation.coordinate)
       .title(annotation.title)
       .icon(BitmapDescriptorFactory.fromAsset("lib/green_circle.bmp")))

我收到上述代码的错误消息:

  

com.google.maps.api.android.lib6.common.apiexception.b:失败   解码图像。提供的图像必须是位图。

我检查了图像,它是bmp enter image description here

2 个答案:

答案 0 :(得分:0)

它处理图像的方式似乎有问题。正如我已经测试过的那样,它确实接受png,jpg和bmp,但对于某些格式(png和bmp)的文件,我也遇到了同样的问题。

我所做的是在另一个图像编辑器上打开了一些文件,覆盖了文件,然后工作了。奇怪的是,这些文件是Adobe Photoshop中的普通png图标,无法正常工作。

如果您有任何问题或疑问,请尝试使用其他来源的文件进行调试,或对其进行编辑并再次保存。

答案 1 :(得分:0)

由于其他原因,我收到了相同的错误消息。我的文件很好,但是我提供了错误的文件路径。

确保目录和文件名正确!