


Wie Android GPS verwendet, um den geografischen Standort des Benutzers zu ermitteln und Standortänderungen zu überwachen
Das Beispiel in diesem Artikel beschreibt, wie Android GPS verwendet, um den geografischen Standort des Benutzers zu ermitteln und Standortänderungen zu überwachen. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
LocationActivity.java
/* LocationActivity.java * @author octobershiner * 2011 7 22 * SE.HIT * 一个演示定位用户的位置并且监听位置变化的代码 * */ package uni.location; import android.app.Activity; import android.content.Context; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; import android.os.Bundle; import android.os.Vibrator; import android.util.Log; import android.widget.TextView; public class LocationActivity extends Activity { /** Called when the activity is first created. */ //创建lcoationManager对象 private LocationManager manager; private static final String TAG = "LOCATION DEMO"; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //获取系统的服务, manager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); Location location = manager.getLastKnownLocation(LocationManager.GPS_PROVIDER); //第一次获得设备的位置 updateLocation(location); //重要函数,监听数据测试 manager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 6000, 10, locationListener); } /*此处更新一下,当activity不处于活动状态时取消GPS的监听*/ public void onPause(){ super.onPause(); locationManager.removeListener(locationListener); } //创建一个事件监听器 private final LocationListener locationListener = new LocationListener() { public void onLocationChanged(Location location) { updateLocation(location); } public void onProviderDisabled(String provider){ updateLocation(null); Log.i(TAG, "Provider now is disabled.."); } public void onProviderEnabled(String provider){ Log.i(TAG, "Provider now is enabled.."); } public void onStatusChanged(String provider, int status,Bundle extras){ } }; //获取用户位置的函数,利用Log显示 private void updateLocation(Location location) { String latLng; if (location != null) { double lat = location.getLatitude(); double lng = location.getLongitude(); latLng = "Latitude:" + lat + " Longitude:" + lng; } else { latLng = "Can't access your location"; } Log.i(TAG, "The location has changed.."); Log.i(TAG, "Your Location:" +latLng); } }
Aus Gründen der Sicherheit des Android-Systems reicht es nicht aus, nur die Aktivitätsdatei zu ändern. Für Dienste wird ein Autorisierungsmechanismus verwendet. Daher müssen Sie die Datei manifest.xml ändern.
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="uni.location" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".LocationActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> </manifest>
Viele Freunde haben möglicherweise Fragen zum Debugging-Problem der GPS-Positionierung auf der virtuellen Android-Maschine Tatsächlich kann es simuliert werden, indem Sie die virtuelle Maschine starten und dann DDMS öffnen. In der Gerätespalte auf der linken Seite wird dynamisch der Startstatus verschiedener Dienste auf der virtuellen Maschine angezeigt In der Emulatorzeile unter der Spalte „Einzelmaschinengerät“ werden Sie feststellen, dass sich unter der Emulatorsteuerung eine Standortsteuerung befindet. Öffnen Sie die Registerkarte „Manuell“, haha. Ich glaube, Sie haben den Breiten- und Längengrad gesehen kann es ändern. Führen Sie Ihr Programm aus und klicken Sie dann auf die Schaltfläche „Senden“ mit dem Breiten- und Längengrad, den Sie gerade eingestellt haben, um den Empfang des neuen geografischen Standorts zu simulieren.
In dieser Demo habe ich Log verwendet, um den Status anzuzeigen. Es ist sehr nützlich, sich an meine anderen zu wenden Um zu lernen, wie man Log geschickt nutzt, empfehle ich Ihnen, nach den Lehrvideos von sundyzlh zu suchen.
Bezüglich der Verwendung von LOG lesen Sie bitte den vorherigen Artikel „Detaillierte Erläuterung der Android-Programmierung zur Demonstration einer Aktivitätslebenszyklusinstanz basierend auf Protokoll“
Der endgültige Effekt ist wie folgt:
Ich hoffe, dass dieser Artikel für alle hilfreich ist, die sich mit der Android-Programmierung befassen.
Weitere verwandte Artikel darüber, wie Android GPS verwendet, um den geografischen Standort des Benutzers zu ermitteln und Standortänderungen zu überwachen, finden Sie auf der chinesischen PHP-Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Mit der Klassenbelastung von Java wird das Laden, Verknüpfen und Initialisieren von Klassen mithilfe eines hierarchischen Systems mit Bootstrap-, Erweiterungs- und Anwendungsklassenloadern umfasst. Das übergeordnete Delegationsmodell stellt sicher

In dem Artikel wird in der Implementierung von mehrstufigem Caching in Java mithilfe von Koffein- und Guava-Cache zur Verbesserung der Anwendungsleistung erläutert. Es deckt die Einrichtungs-, Integrations- und Leistungsvorteile sowie die Bestrafung des Konfigurations- und Räumungsrichtlinienmanagements ab

In dem Artikel werden mit JPA für Objektrelationszuordnungen mit erweiterten Funktionen wie Caching und faulen Laden erläutert. Es deckt Setup, Entity -Mapping und Best Practices zur Optimierung der Leistung ab und hebt potenzielle Fallstricke hervor. [159 Charaktere]

In dem Artikel werden Maven und Gradle für Java -Projektmanagement, Aufbau von Automatisierung und Abhängigkeitslösung erörtert, die ihre Ansätze und Optimierungsstrategien vergleichen.

In dem Artikel werden benutzerdefinierte Java -Bibliotheken (JAR -Dateien) mit ordnungsgemäßem Versioning- und Abhängigkeitsmanagement erstellt und verwendet, wobei Tools wie Maven und Gradle verwendet werden.
