Holen Sie sich Breitengrad, Länge von Adresse in Android

Ich möchte den Breiten- und Längengrad eines Platzes von einer Adresse bekommen. Ich möchte nicht den Breiten- und Längengrad vom GPS noch das Netzwerk bekommen.

Ich möchte, dass der Benutzer in der Lage sein wird, einen Text zu schreiben, der Adresse des Ortes, den er will (zB sein Büro) und unterhalb des Textfeldes einige Vorschläge gezeigt werden, genau wie wenn Sie die Adresse in der Google Map App eingeben. Dann möchte ich die Koordinaten der angegebenen Adresse abrufen.

  • Füllen Sie die Daten in einer Android-Bitmap so schnell wie möglich aus C
  • Ändern Sie Titel Schriftart des Alarms Dialogfeld Android
  • Kontoinformationen, die mit einer Anwendungsinstallation verbunden sind
  • So starten Sie einen Service, wenn .apk zum ersten Mal installiert ist
  • Einige von Bootstrap3 Glyphicons werden nicht korrekt auf Phonegap android webview angezeigt
  • Roboto Schriftart für Android 4+?
  • Wenn dies nicht möglich ist, gibt es einen Weg, um die Adresse über die Google Maps App selbst zu bekommen. Vielleicht könnte ich die gmaps von meiner app anrufen und der Benutzer wird die Adresse eingeben und die gmaps würden die Koordinaten zurückgeben.

    Wie kann ich es tun?

  • Der Cache von Gradle kann korrupt sein (dies tritt manchmal nach einem Timeout der Netzwerkverbindung auf.)
  • Android Emulator nutzt 100% CPU, auch wenn nichts, was ich läuft auf sie?
  • So erstellen Sie eine PreferenceActivity ein Dialog, um eine benutzerdefinierte Präferenz festzulegen
  • Android bestimmen die Bildschirmausrichtung zur Laufzeit
  • Mit android studio kein jvm gefunden, wurde JAVA_HOME gesetzt
  • Wie bekomme ich die Datei * .apk Standort im Android-Gerät
  • 4 Solutions collect form web for “Holen Sie sich Breitengrad, Länge von Adresse in Android”

    Die Geocoder API im Android Framework zur Verfügung gestellt

    Ich habe vorher mit der Geocoding API gearbeitet, die in der Android API existiert, aber es funktioniert nicht auf allen Geräten. In der Tat, wie bei meinen und anderen Erfahrungen, werden viele Geräte null zurückgeben, wenn sie die Geocoding API verwenden.

    Aus diesem Grund habe ich mich für den Reverse Geocoder entschieden, der auf allen Geräten perfekt funktioniert, aber aufgrund der HTTP-Anfrage einen zusätzlichen Overhead benötigt.

    Abrufen der Länge und Breite von einer Adresse mit der Reverse Geocoding API

    Um dieses Problem zu vermeiden, ist es einfach, die Reverse Geocoding API zu verwenden, die ein JSON Object zurückgibt.

    Sie können entweder die API verwenden, um eine Adresse über Breiten- und Längengrad zu finden, oder finden Sie Breiten- und Längengrad von einer Adresse:

    http://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=true_or_false

    Kehrt zurück:

    { "results" : [ { "address_components" : [ { "long_name" : "1600", "short_name" : "1600", "types" : [ "street_number" ] }, { "long_name" : "Amphitheatre Pkwy", "short_name" : "Amphitheatre Pkwy", "types" : [ "route" ] }, { "long_name" : "Mountain View", "short_name" : "Mountain View", "types" : [ "locality", "political" ] }, { "long_name" : "Santa Clara", "short_name" : "Santa Clara", "types" : [ "administrative_area_level_2", "political" ] }, { "long_name" : "California", "short_name" : "CA", "types" : [ "administrative_area_level_1", "political" ] }, { "long_name" : "United States", "short_name" : "US", "types" : [ "country", "political" ] }, { "long_name" : "94043", "short_name" : "94043", "types" : [ "postal_code" ] } ], "formatted_address" : "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA", "geometry" : { "location" : { "lat" : 37.42291810, "lng" : -122.08542120 }, "location_type" : "ROOFTOP", "viewport" : { "northeast" : { "lat" : 37.42426708029149, "lng" : -122.0840722197085 }, "southwest" : { "lat" : 37.42156911970850, "lng" : -122.0867701802915 } } }, "types" : [ "street_address" ] } ], "status" : "OK" } 

    Es ist hiermit eine einfache Sache, eine HTTP-Anforderung an die Reverse Geocoding API mit einer vom Benutzer eingegebenen Adresse zu senden und danach das JSON-Objekt zu analysieren, um die benötigten Daten zu finden.

    Ein früherer Beitrag beschreibt, wie ein JSON-Objekt aus einer URL analysiert werden kann .

    Hoffe das hilft.

    Sie können die folgende Methode verwenden:

      Geocoder coder = new Geocoder(this); try { ArrayList<Address> adresses = (ArrayList<Address>) coder.getFromLocationName("Your Address", 50); for(Address add : adresses){ if (statement) {//Controls to ensure it is right address such as country etc. double longitude = add.getLongitude(); double latitude = add.getLatitude(); } } } catch (IOException e) { e.printStackTrace(); } 
     /** * @method getLocationFromAddress * @param strAddress Address/Location String * @desc Get searched location points from address and plot/update on map. */ public void getLocationFromAddress(String strAddress) { //Create coder with Activity context - this Geocoder coder = new Geocoder(this); List<Address> address; try { //Get latLng from String address = coder.getFromLocationName(strAddress,5); //check for null if (address == null) { return; } //Lets take first possibility from the all possibilities. Address location=address.get(0); LatLng latLng = new LatLng(location.getLatitude(), location.getLongitude()); //Put marker on map on that LatLng Marker srchMarker = mMap.addMarker(new MarkerOptions().position(latLng).title("Destination").icon(BitmapDescriptorFactory.fromResource(R.drawable.bb))); //Animate and Zoon on that map location mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng)); mMap.animateCamera(CameraUpdateFactory.zoomTo(15)); } catch (IOException e) { e.printStackTrace(); } } 

    Was Sie brauchen, ist: http://developer.android.com/reference/android/location/Geocoder.html .

    Sie können es so verwenden:

     List<Address> result = new Geocoder(context).getFromLocationName(locationName, maxResults); 

    Sie erhalten eine Liste der Address und Sie können dann getLatitude und getLongitude auf diese Adressen getLongitude .

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.