Dalam Android, mendapatkan semula lokasi semasa peranti mudah alih, termasuk latitud dan longitudnya, adalah keperluan biasa. Untuk mencapai matlamat ini, API LocationManager menyediakan beberapa pilihan.
Satu pendekatan mudah ialah menggunakan kaedah getLastKnownLocation() bagi LocationManager. Kaedah ini mendapatkan semula lokasi yang diketahui terkini untuk pembekal lokasi tertentu, seperti GPS.
LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE); Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER); if (location != null) { double longitude = location.getLongitude(); double latitude = location.getLatitude(); }
Untuk kemas kini lokasi berterusan, kaedah requestLocationUpdates() harus digunakan . Kaedah ini mengambil LocationListener sebagai hujah, yang menyediakan panggilan balik apabila lokasi berubah.
private final LocationListener locationListener = new LocationListener() { public void onLocationChanged(Location location) { double longitude = location.getLongitude(); double latitude = location.getLatitude(); } }; lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2000, 10, locationListener);
Untuk menggunakan GPS atau perkhidmatan lokasi lain, aplikasi Android mesti mempunyai kebenaran ACCESS_FINE_LOCATION . Kebenaran ini hendaklah diisytiharkan dalam fail AndroidManifest.xml:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Untuk peranti yang mungkin tidak mempunyai keupayaan GPS, kebenaran ACCESS_COARSE_LOCATION boleh ditambah untuk membolehkan penggunaan pembekal lokasi berasaskan rangkaian. Selain itu, kaedah getBestProvider() boleh digunakan untuk memilih penyedia lokasi yang paling sesuai berdasarkan keadaan semasa.
Atas ialah kandungan terperinci Bagaimanakah saya Boleh Mendapatkan Latitud dan Longitud dalam Android Menggunakan LocationManager?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!