1
マップにビットマップを使用しないマーカーを追加すると、例外が発生しますが、例外が発生することがあります。ビットマップを使用せずにマップにマーカーを追加すると、例外が発生します。
確かに問題を解決するのは簡単ですが、適切なビットマップを追加するだけですが、アプリがクラッシュすることなく例外をキャッチするのは素晴らしいことです。
private void showLocations() {
for(Map location : locations) {
MarkerOptions markerOptions = makeMarkerOptions(location);
if(googleMap != null && markerOptions != null) {
Marker marker = googleMap.addMarker(markerOptions);
markers.put(marker, location);
}
}
}
例外は(addmarkerとして起こる)
11-03 10:26:29.297 13148-13148/au.com.gaiaresources.microblitzbeta E/AndroidRuntime: FATAL EXCEPTION: main
Process: au.com.zzzzzzz.zzzzzzzz, PID: 13148
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.g.a(:[email protected]:9)
at com.google.maps.api.android.lib6.impl.n.a(:[email protected]:7)
at com.google.maps.api.android.lib6.impl.cz.<init>(:[email protected]:25)
at com.google.maps.api.android.lib6.impl.ba.a(:[email protected]:487)
at com.google.android.gms.maps.internal.k.onTransact(:[email protected]:94)
at android.os.Binder.transact(Binder.java:507)
at com.google.android.gms.maps.internal.IGoogleMapDelegate$zza$zza.addMarker(Unknown Source)
どのように私はこの例外をキャッチしていますか?私はcom.google.maps.api.android.lib6.common.apiexception.bをキャッチしようとしましたが、それは存在しませんか?
private void showLocations() {
for(Map location : locations) {
try {
MarkerOptions markerOptions = makeMarkerOptions(location);
if(googleMap != null && markerOptions != null) {
Marker marker = googleMap.addMarker(markerOptions);
markers.put(marker, location);
}
} catch(com.google.maps.api.android.lib6.common.apiexception.b ex) {
getDependencyService().getLogger().error(ex.getLocalizedMessage());
}
}
}
を?私はすべてのものではなく実際の例外をキャッチしたい。 –
はい、それは良いです。しかし、例外をまったく避ける方が良い。 –