Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 地图API:PNG用于地面覆盖_Android_Google Maps_Png_Bmp_Gmsgroundoverlay - Fatal编程技术网

Android 地图API:PNG用于地面覆盖

Android 地图API:PNG用于地面覆盖,android,google-maps,png,bmp,gmsgroundoverlay,Android,Google Maps,Png,Bmp,Gmsgroundoverlay,我正在为Android创建一个应用程序,它使用Maps API,我想使用GroundOverlay 这是我4月1日的实际: @Override public void onMapReady(GoogleMap googleMap) { mMap = googleMap; //defining coordinates of image bounds LatLngBounds imageMapBounds = new LatLngBounds( new La

我正在为Android创建一个应用程序,它使用Maps API,我想使用
GroundOverlay

这是我4月1日的实际

@Override
public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;

    //defining coordinates of image bounds
    LatLngBounds imageMapBounds = new LatLngBounds(
        new LatLng(46.709064, 2.888008),
        new LatLng(46.729014, 2.918522)
    );

    //adding image and coordinates to the GroundOverlay
    GroundOverlayOptions imageMapOptions = new GroundOverlayOptions()
            .image(BitmapDescriptorFactory.fromAsset("map.png"))
            .positionFromBounds(imageMapBounds);

    //adding GroundOverlay to the map
    GroundOverlay map = mMap.addGroundOverlay(imageMapOptions);
}
我尝试过在google上找到的其他方法,但在所有情况下,都会发生以下错误:

E/AndroidRuntime: FATAL EXCEPTION: main
                  Process: fr.rm_jln.parilly, PID: 29898
                  com.google.maps.api.android.lib6.common.apiexception.b: Failed to decode image. The provided image must be a Bitmap.
                      at com.google.maps.api.android.lib6.impl.h.a(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):9)
                      at com.google.maps.api.android.lib6.impl.o.a(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):7)
                      at com.google.maps.api.android.lib6.impl.bj.<init>(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):37)
                      at com.google.maps.api.android.lib6.impl.bc.a(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):539)
                      at com.google.android.gms.maps.internal.l.onTransact(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):98)
                      at android.os.Binder.transact(Binder.java:499)
                      at com.google.android.gms.internal.maps.zza.transactAndReadException(Unknown Source)
                      at com.google.android.gms.maps.internal.zzg.addGroundOverlay(Unknown Source)
                      at com.google.android.gms.maps.GoogleMap.addGroundOverlay(Unknown Source)
                      at fr.rm_jln.parilly.DisplayPathActivity.onMapReady(DisplayPathActivity.java:100)
                      at com.google.android.gms.maps.zzak.zza(Unknown Source)
                      at com.google.android.gms.maps.internal.zzaq.dispatchTransaction(Unknown Source)
                      at com.google.android.gms.internal.maps.zzb.onTransact(Unknown Source)
                      at android.os.Binder.transact(Binder.java:499)
                      at fr.b(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):20)
                      at com.google.android.gms.maps.internal.bg.a(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):5)
                      at com.google.maps.api.android.lib6.impl.be.run(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):5)
                      at android.os.Handler.handleCallback(Handler.java:761)
                      at android.os.Handler.dispatchMessage(Handler.java:98)
                      at android.os.Looper.loop(Looper.java:156)
                      at android.app.ActivityThread.main(ActivityThread.java:6523)
                      at java.lang.reflect.Method.invoke(Native Method)
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
E/AndroidRuntime:致命异常:主
流程:fr.rm_jln.Parally,PID:29898
com.google.maps.api.android.lib6.common.apiexception.b:解码图像失败。提供的图像必须是位图。
在com.google.maps.api.android.lib6.impl.h.a(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):9)
在com.google.maps.api.android.lib6.impl.o.a(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):7)
在com.google.maps.api.android.lib6.impl.bj.(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):37)
在com.google.maps.api.android.lib6.impl.bc.a(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):539)
在com.google.android.gms.maps.internal.l.onTransact(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):98)
位于android.os.Binder.transact(Binder.java:499)
位于com.google.android.gms.internal.maps.zza.TransactionandredException(未知来源)
位于com.google.android.gms.maps.internal.zzg.addGroundOverlay(未知来源)
位于com.google.android.gms.maps.GoogleMap.addGroundOverlay(未知来源)
在fr.rm_jln.parilly.DisplayPathActivity.onMapReady(DisplayPathActivity.java:100)
在com.google.android.gms.maps.zzak.zza(未知来源)
位于com.google.android.gms.maps.internal.zzaq.dispatchTransaction(未知来源)
位于com.google.android.gms.internal.maps.zzb.onTransact(未知来源)
位于android.os.Binder.transact(Binder.java:499)
在fr.b(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):20)
在com.google.android.gms.maps.internal.bg.a(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):5)
在com.google.maps.api.android.lib6.impl.be.run(:com.google.android.gms.dynamite_dynamitemodulesb@12673025@12.6.73 (040408-194189626):5)
位于android.os.Handler.handleCallback(Handler.java:761)
位于android.os.Handler.dispatchMessage(Handler.java:98)
位于android.os.Looper.loop(Looper.java:156)
位于android.app.ActivityThread.main(ActivityThread.java:6523)
位于java.lang.reflect.Method.invoke(本机方法)
在com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)上
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)
如第三行所述,
GroundOverlay
仅接受
.bmp
图像。 问题是,我的图像在
.png
中重约15毫米,在
.bmp
中重超过500毫米。
.bmp
中的图像无法压缩,如果我想要最低质量,我无法将其调整得更小


所以我的问题是:如何使用GroundOverlay而不使用太重的文件?

这条消息是什么
无法解码图像的。提供的图像必须是位图。
建议您?查看问题和答案。