Я пытаюсь добраться до последнего известного местоположения с помощью GoogleApiClient
, когда начинается деятельность Map
. Я последовал за руководство в ссылке:com.google.android.gms.maps.GoogleMap.addMarker (com.google.android.gms.maps.model.MarkerOptions) 'на ссылке нулевого объекта
https://developer.android.com/training/location/retrieve-current.html
Это работает, но приложение craches когда-то и я получаю ошибку ниже:
Как я могу это исправить?
Ошибка:
08-28 16:10:11.687: E/AndroidRuntime(5937): FATAL EXCEPTION: main
08-28 16:10:11.687: E/AndroidRuntime(5937): Process: com.bustracker, PID: 5937
08-28 16:10:11.687: E/AndroidRuntime(5937): java.lang.NullPointerException: Attempt to invoke virtual method 'com.google.android.gms.maps.model.Marker com.google.android.gms.maps.GoogleMap.addMarker(com.google.android.gms.maps.model.MarkerOptions)' on a null object reference
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.bustracker.Map.onConnected(Map.java:494)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.google.android.gms.common.internal.zzj.zzg(Unknown Source)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.google.android.gms.common.api.zze.zzmH(Unknown Source)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.google.android.gms.common.api.zze.onConnected(Unknown Source)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.google.android.gms.common.api.zzg$2.onConnected(Unknown Source)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.google.android.gms.common.internal.zzi$zzg.zznO(Unknown Source)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.google.android.gms.common.internal.zzi$zza.zzc(Unknown Source)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.google.android.gms.common.internal.zzi$zza.zzr(Unknown Source)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.google.android.gms.common.internal.zzi$zzc.zznQ(Unknown Source)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.google.android.gms.common.internal.zzi$zzb.handleMessage(Unknown Source)
08-28 16:10:11.687: E/AndroidRuntime(5937): at android.os.Handler.dispatchMessage(Handler.java:102)
08-28 16:10:11.687: E/AndroidRuntime(5937): at android.os.Looper.loop(Looper.java:145)
08-28 16:10:11.687: E/AndroidRuntime(5937): at android.app.ActivityThread.main(ActivityThread.java:5944)
08-28 16:10:11.687: E/AndroidRuntime(5937): at java.lang.reflect.Method.invoke(Native Method)
08-28 16:10:11.687: E/AndroidRuntime(5937): at java.lang.reflect.Method.invoke(Method.java:372)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1389)
08-28 16:10:11.687: E/AndroidRuntime(5937): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1184)
Карта активности:
я попробовал ваше предложение, но обратного вызова 'onMapReady() 'не вызывается. Я вызываю 'getMapAsync' в' onCreate() '! –
mapView.getMapAsync (новый OnMapReadyCallback() { public void onMapReady (GoogleMap googleMap) { } }); –
вы должны получить карту в OnMapReady, или она всегда будет пустой –