Google Map API для Android выдает неизвестную ошибку источника при добавлении наземного наложения с помощью BitmapDescriptor, загруженного из ресурса

Я использую приведенный ниже код, чтобы добавить наземные оверлеи на карту Google, используя API 2 от Android.

LatLng ne = currentHole.getNe();
    LatLng sw = currentHole.getSw();
    LatLngBounds mOverlayBound = new LatLngBounds(ne,sw);
    BitmapDescriptor mDesc= BitmapDescriptorFactory.
    fromAsset(currentHole.getGroundOverLay()); GroundOverlayOptions mOverlayOp = new GroundOverlayOptions().image(mDesc).positionFromBounds(mOverlayBound).zIndex(2); mOverlayOp.bearing(0);
    gOverLay = googleMap.addGroundOverlay(mOverlayOp);

Все входные параметры действительны, и он работает нормально, когда я загружаю BitMapDescriptor из ресурса вместо ресурса, и этот код работал нормально до того, как недавно я коснулся кода для некоторых изменений, затем он начал показывать ошибку, как показано ниже.

02-23 10:07:22.982: W/System.err(3538): java.lang.NullPointerException 

02-23 10:07:22.986: W/System.err(3538): at com.google.k.a.cj.a(Unknown 

       Source) 
02-23 10:07:22.986: W/System.err(3538): at 
        com.google.maps.api.android.lib6.c.dc.<init>(Unknown Source) 
02-23 10:07:22.986: W/System.err(3538): at   com.google.maps.api.android.lib6.c.db.a(Unknown Source) 
02-23 10:07:22.986: W/System.err(3538): at com.google.maps.api.android.lib6.c.eu.<init>(Unknown Source) 
02-23 10:07:22.986: W/System.err(3538): at com.google.maps.api.android.lib6.c.el.a(Unknown Source) 
02-23 10:07:22.986: W/System.err(3538): at com.google.android.gms.maps.internal.l.onTransact(SourceFile:182) 
02-23 10:07:22.986: W/System.err(3538): at android.os.Binder.transact(Binder.java:380) 
02-23 10:07:22.986: W/System.err(3538): at com.google.android.gms.maps.internal.IGoogleMapDelegate$a$a.addGroundOverlay(Unknown Source) 
02-23 10:07:22.986: W/System.err(3538): at com.google.android.gms.maps.GoogleMap.addGroundOverlay(Unknown Source) --

1 ответ

Я думаю, что проблема с линией

BitmapDescriptor mDesc= BitmapDescriptorFactory. fromAsset(currentHole.getGroundOverLay());

Что, вероятно, дает вам исключение NullpointerException. Убедитесь, что вы просто передаете String как изображение, хранящееся в каталоге assests вашего проекта. Может быть currentHole.getGroundOverLay() не является допустимым изображением в каталоге ресурсов и, следовательно, оно дает NullPointer.

Другие вопросы по тегам