Advertisement
Guest User

MapsActivity

a guest
Feb 27th, 2017
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.73 KB | None | 0 0
  1. package com.luqmanaj.aktivitasmap;
  2.  
  3. import com.google.android.gms.maps.CameraUpdateFactory;
  4. import com.google.android.gms.maps.GoogleMap;
  5. import com.google.android.gms.maps.GoogleMap.OnInfoWindowClickListener;
  6. import com.google.android.gms.maps.GoogleMap.OnMarkerClickListener;
  7. import com.google.android.gms.maps.MapFragment;
  8. import com.google.android.gms.maps.OnMapReadyCallback;
  9. import com.google.android.gms.maps.SupportMapFragment;
  10. import com.google.android.gms.maps.model.BitmapDescriptorFactory;
  11. import com.google.android.gms.maps.model.LatLng;
  12. import com.google.android.gms.maps.model.Marker;
  13. import com.google.android.gms.maps.model.MarkerOptions;
  14.  
  15. import android.Manifest;
  16. import android.content.Intent;
  17. import android.content.pm.PackageManager;
  18. import android.location.LocationManager;
  19. import android.net.Uri;
  20. import android.os.Bundle;
  21. import android.support.v4.app.ActivityCompat;
  22. import android.support.v4.app.FragmentActivity;
  23. import android.support.v4.app.FragmentManager;
  24. import android.view.Menu;
  25. import android.widget.Toast;
  26.  
  27. //http://cariprogram.blogspot.com
  28. //nuramijaya@gmail.com
  29.  
  30.  
  31. public class MapsActivity extends FragmentActivity
  32.         implements OnMapReadyCallback {
  33.  
  34.     final int RQS_GooglePlayServices = 1;
  35.     private GoogleMap myMap;
  36.  
  37.  
  38.  
  39.  
  40.     @Override
  41.     protected void onCreate(Bundle savedInstanceState) {
  42.         super.onCreate(savedInstanceState);
  43.         setContentView(R.layout.activity_maps);
  44.         MapFragment mapFragment = (MapFragment) getFragmentManager()
  45.                 .findFragmentById(R.id.map);
  46.         mapFragment.getMapAsync(this);
  47.     }
  48.     /**
  49.     protected void onCreate(Bundle savedInstanceState) {
  50.         super.onCreate(savedInstanceState);
  51.         setContentView(R.layout.activity_main);
  52.         FragmentManager myFragmentManager = getSupportFragmentManager();
  53.         SupportMapFragment mySupportMapFragment = (SupportMapFragment) myFragmentManager.findFragmentById(R.id.map);
  54.  
  55.         myMap = mySupportMapFragment.getMap();
  56.  
  57.      **/
  58.  
  59.  
  60.     public void onMapReady(GoogleMap map) {
  61.  
  62.         Bundle bundle = getIntent().getParcelableExtra("bundle");
  63.  
  64.         //LatLng jogja = new LatLng(-7.782939, 110.367050);
  65.         LatLng rumkit = bundle.getParcelable("rumah_sakit");
  66.         MarkerOptions markerJogja = new MarkerOptions();
  67.         markerJogja.position(rumkit);
  68.         Intent intent=getIntent();
  69.         markerJogja.title(intent.getStringExtra("firstName"));
  70.         //markerJogja.title("Rumah sakit Sari Asih");
  71.         markerJogja.snippet("Tugu Pusat Kota Yogyakarta");
  72.         markerJogja.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN));
  73.         myMap.addMarker(markerJogja);
  74.  
  75.         /**
  76.          LatLng amplaz = new LatLng(-7.783130530640776, 110.40135302698059);
  77.          MarkerOptions markerAmplaz = new MarkerOptions();
  78.          markerAmplaz.position(amplaz);
  79.          markerAmplaz.title("Ambarrukmo Plaza");
  80.          markerAmplaz.snippet("Ambarrukmo Plaza Yogyakarta");
  81.          markerAmplaz.icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_RED));
  82.          myMap.addMarker(markerAmplaz);
  83.  
  84.          **/
  85.  
  86.         myMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
  87.  
  88.         myMap.getUiSettings().setCompassEnabled(true);
  89.  
  90.         myMap.getUiSettings().setZoomControlsEnabled(true);
  91.  
  92.         myMap.getUiSettings().setMyLocationButtonEnabled(true);
  93.  
  94.  
  95.         if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
  96.             // TODO: Consider calling
  97.             //    ActivityCompat#requestPermissions
  98.             // here to request the missing permissions, and then overriding
  99.             //   public void onRequestPermissionsResult(int requestCode, String[] permissions,
  100.             //                                          int[] grantResults)
  101.             // to handle the case where the user grants the permission. See the documentation
  102.             // for ActivityCompat#requestPermissions for more details.
  103.             return;
  104.         }
  105.         myMap.setMyLocationEnabled(true);
  106.  
  107.         myMap.animateCamera(CameraUpdateFactory.newLatLngZoom(rumkit, 15));
  108.  
  109.         myMap.setOnMarkerClickListener(new OnMarkerClickListener() {
  110.  
  111.             @Override
  112.             public boolean onMarkerClick(Marker arg0) {
  113.                 // TODO Auto-generated method stub
  114.  
  115.                 try {
  116.                     StringBuilder urlString = new StringBuilder();
  117.                     String daddr = (String.valueOf(arg0.getPosition().latitude)+","+String.valueOf(arg0.getPosition().longitude));
  118.                     urlString.append("http://maps.google.com/maps?f=d&hl=en");
  119.                     urlString.append("&saddr="+String.valueOf(myMap.getMyLocation().getLatitude())+","+String.valueOf(myMap.getMyLocation().getLongitude()));
  120.                     urlString.append("&daddr="+daddr);
  121.                     Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(urlString.toString()));
  122.                     startActivity(i);
  123.                 } catch (Exception ee) {
  124.                     Toast.makeText(getApplicationContext(), "Lokasi Saat Ini Belum Didapatkan, Coba Nyalakan GPS, Keluar Ruangan dan Tunggu Beberapa Saat", Toast.LENGTH_LONG).show();
  125.                 }
  126.                 return false;
  127.             }
  128.         });
  129.  
  130.  
  131.         myMap.setOnInfoWindowClickListener(new OnInfoWindowClickListener() {
  132.  
  133.             @Override
  134.             public void onInfoWindowClick(Marker arg0) {
  135.                 // TODO Auto-generated method stub
  136.                 //JIKA KLIKNYA INGIN DI INFO WINDOW
  137.             }
  138.  
  139.         });
  140.  
  141.     }
  142. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement