Advertisement
Guest User

SESESES

a guest
Jan 29th, 2020
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.69 KB | None | 0 0
  1. package com.pubnub.tutorials.map.android.pubnubmaptutorialandroid.locationpublish;
  2.  
  3. import android.app.Activity;
  4. import android.util.Log;
  5.  
  6. import com.google.android.gms.maps.CameraUpdateFactory;
  7. import com.google.android.gms.maps.GoogleMap;
  8. import com.google.android.gms.maps.model.LatLng;
  9. import com.google.android.gms.maps.model.Marker;
  10. import com.google.android.gms.maps.model.MarkerOptions;
  11.  
  12. import java.util.Map;
  13.  
  14. public class LocationPublishMapAdapter {
  15. private static final String TAG = LocationPublishMapAdapter.class.getName();
  16.  
  17. private Marker marker;
  18. private Activity activity;
  19. private GoogleMap map;
  20.  
  21. public LocationPublishMapAdapter(Activity activity, GoogleMap map) {
  22. this.activity = activity;
  23. this.map = map;
  24. }
  25.  
  26. public void locationUpdated(final Map<String, String> newLocation) {
  27. if (newLocation.containsKey("lat") && newLocation.containsKey("lng")) {
  28. String lat = newLocation.get("lat");
  29. String lng = newLocation.get("lng");
  30.  
  31. doUiUpdate(new LatLng(Double.parseDouble(lat), Double.parseDouble(lng)));
  32. } else {
  33. Log.w(TAG, "message ignored: " + newLocation.toString());
  34. }
  35. }
  36.  
  37. private void doUiUpdate(final LatLng location) {
  38. activity.runOnUiThread(new Runnable() {
  39. @Override
  40. public void run() {
  41. if (marker != null) {
  42. marker.setPosition(location);
  43. } else {
  44. marker = map.addMarker(new MarkerOptions().position(location));
  45. }
  46.  
  47. map.moveCamera(CameraUpdateFactory.newLatLng(location));
  48. }
  49. });
  50. }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement