Ich erhalte die oben genannten Fehler, wenn mein Android App-Code-Daten von einer Cloud-Messaging-Plattform empfängt, und ich versuche, dass die Daten auf der Karte zu setzen -java.lang.IllegalStateException: Nicht auf dem Hauptthread Google Maps
java.lang.IllegalStateException: Not on the main thread
at maps.w.c.a(Unknown Source)
at maps.y.F.a(Unknown Source)
at maps.ad.u.b(Unknown Source)
at vo.onTransact(:com.google.android.gms.DynamiteModulesB:92)
at android.os.Binder.transact(Binder.java:380)
at com.google.android.gms.maps.internal.IGoogleMapDelegate$zza$zza.animateCamera(Unknown Source)
at com.google.android.gms.maps.GoogleMap.animateCamera(Unknown Source)
at com.pabba.mtracker.tracking.view.TrackingActivity.onLocationReceived(TrackingActivity.java:54)
Der folgende Code wird von meinem Referenten (ich verwende MVP Pattern für meine Android-App) aufgerufen, wenn er eine Standortnachricht vom Cloud Messaging-Dienst empfängt.
@Override
public void onLocationReceived(LatLng latLng) {
Log.i(TAG, latLng.toString());
mGoogleMap.addPolyline(new PolylineOptions().add(latLng));
mGoogleMap.animateCamera(CameraUpdateFactory.newCameraPosition(new CameraPosition.Builder().target(latLng)
.zoom(13).build()));
}
Und der Fehler tritt in der AddPolyLine Funktionsaufruf. Bitte sagen Sie mir, was getan werden kann, um es zu lösen.
Run auf UI-Thread – Nithinlal