Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class obtenercoordenadas extends FragmentActivity implements OnMapReadyCallback {
- private GoogleMap googleMap;
- private HashMap<Marker, Integer> idmarker = new HashMap<>();
- private String name;
- private String name1;
- private String name2;
- private String name3;
- private String name4;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.fm_buscarestacionamientos);
- SupportMapFragment mapFragment = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.googleMap));
- mapFragment.getMapAsync(this);
- if (android.os.Build.VERSION.SDK_INT > 9) {
- StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
- StrictMode.setThreadPolicy(policy);
- }}
- public void onMapReady(GoogleMap googleMap){
- ArrayList<HashMap<String, String>> location = null;
- String url = "http://www.transportessalgado.cl/obtenercoordenadas.php";
- try {
- JSONArray data = new JSONArray(getHttpGet(url));
- location = new ArrayList<HashMap<String, String>>();
- HashMap<String, String> map;
- for (int i = 0; i < data.length(); i++) {
- JSONObject tienda = data.getJSONObject(i);
- map = new HashMap<String, String>();
- map.put("usuario_rut_administrador",tienda.getString("usuario_rut_administrador"));
- map.put("nombre_estacionamiento", tienda.getString("nombre_estacionamiento"));
- map.put("latitud", tienda.getString("latitud"));
- map.put("longitud", tienda.getString("longitud"));
- map.put("cantidad_cupos", tienda.getString("cantidad_cupos"));
- Log.e("lo que recibe el mapa", String.valueOf(map));
- location.add(map);
- }
- } catch (JSONException e) {
- e.printStackTrace();
- }
- // *** Display Google Map
- assert location != null;
- Double latitude = Double.parseDouble(location.get(0).get("latitud"));
- Double longitude = Double.parseDouble(location.get(0).get("longitud"));
- //String idddd= String.valueOf(location.get(0).get("usuario_rut_administrador"));
- LatLng coordinate = new LatLng(latitude, longitude);
- googleMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
- if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
- return;
- }
- googleMap.setMyLocationEnabled(true);
- googleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(coordinate, 24));
- if (ActivityCompat.checkSelfPermission(getApplicationContext(),
- Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED
- && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION)
- != PackageManager.PERMISSION_GRANTED) {
- return;
- }
- // *** Marker (Loop)
- Marker markers = null;
- for (int i = 0; i < location.size(); i++) {
- latitude = Double.parseDouble(location.get(i).get("latitud"));
- longitude = Double.parseDouble(location.get(i).get("longitud"));
- name4 = String.valueOf(location.get(i).get("usuario_rut_administrador"));
- name = String.valueOf(location.get(i).get("nombre_estacionamiento"));
- name2 = String.valueOf(location.get(i).get("cantidad_cupos"));
- name1 = "Nombre Estacionamiento: " + name;
- name3 = "Cupos Disponibles: " + name2;
- MarkerOptions markerOptions = new MarkerOptions().position(new LatLng(latitude, longitude)).title(name1).snippet(name3);
- markers = googleMap.addMarker(markerOptions);
- markers.showInfoWindow();
- //idmarker = new HashMap<Marker, String>();
- idmarker.put(markers, i);
- }
- googleMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
- @Override
- public boolean onMarkerClick(Marker marker) {
- Intent iratienda = new Intent(getApplicationContext(), ConfirmarReserva.class);
- LatLng lat_long = marker.getPosition();
- String id = String.valueOf(idmarker.get(marker));
- iratienda.putExtra("idMarker",id);
- iratienda.putExtra("usuario_rut_administrador",name4);
- iratienda.putExtra("nombre_estacionamiento", name);
- iratienda.putExtra("latitud", lat_long.latitude);
- iratienda.putExtra("longitud", lat_long.longitude);
- iratienda.putExtra("cantidad_cupos",name2);
- Log.e("Informacion_enviada", String.valueOf(id));
- startActivity(iratienda);
- return false;
- }
- });
- // SharedPreferences guardarID = getBaseContext().getSharedPreferences("guardarID", MODE_PRIVATE);
- //SharedPreferences.Editor edit = guardarID.edit();
- //edit.putString("ID", name4.trim()).apply();
- //edit.putString("name",name1.trim()).apply();
- //edit.putString("cantidad",name3.trim()).apply();
- //edit.apply();
- //edit.commit();
- }
- public static String getHttpGet(String url) {
- StringBuilder str = new StringBuilder();
- HttpClient client = new DefaultHttpClient();
- HttpGet httpGet = new HttpGet(url);
- try {
- HttpResponse response = client.execute(httpGet);
- StatusLine statusLine = response.getStatusLine();
- int statusCode = statusLine.getStatusCode();
- if (statusCode == 200) { // Download OK
- HttpEntity entity = response.getEntity();
- InputStream content = entity.getContent();
- BufferedReader reader = new BufferedReader(new InputStreamReader(content));
- String line;
- while ((line = reader.readLine()) != null) {
- str.append(line);
- }
- } else {
- Log.e("Log", "Failed to download result..");
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- return str.toString();
- }
Add Comment
Please, Sign In to add comment