Case code of mobile phone positioning by Android
- 2021-11-02 02:42:31
- OfStack
Android Mobile Phone Location Case Code
The code is as follows:
package com.xuliugen.gpsdemo;
import com.itheima.gpsdemo.R;
import android.app.Activity;
import android.location.Criteria;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.TextView;
/**
* Mobile phone positioning program code
* @author xuliugen
*/
public class MainActivity extends Activity {
// Use location services
private LocationManager lm;
private MyLocationListener listener;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
lm = (LocationManager) getSystemService(LOCATION_SERVICE);
// The way to get the location
// List<String> provider = lm.getAllProviders();
// for(String l: provider){
// System.out.println(l);
// }
listener = new MyLocationListener();
// Register for Listening Location Services
// Setting Conditions for Location Providers
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
// Set parameter refinement:
// criteria.setAccuracy(Criteria.ACCURACY_FINE);// Set to maximum precision
// criteria.setAltitudeRequired(false);// Altitude information is not required
// criteria.setBearingRequired(false);// Azimuth information is not required
// criteria.setCostAllowed(true);// Is payment allowed
// criteria.setPowerRequirement(Criteria.POWER_LOW);// Requirements for electricity quantity
String proveder = lm.getBestProvider(criteria, true);
lm.requestLocationUpdates(proveder, 0, 0, listener);
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
// Cancel listening for location service
lm.removeUpdates(listener);
listener = null;
}
class MyLocationListener implements LocationListener {
/**
* Callback when position changes
*/
public void onLocationChanged(Location location) {
String longitude = " Longitude: " + location.getLongitude();
String latitude = " Latitude: " + location.getLatitude();
String accuracy = " Accuracy: " + location.getAccuracy();
TextView textview = new TextView(MainActivity.this);
textview.setText(longitude + "\n" + latitude + "\n" + accuracy);
setContentView(textview);
}
/**
* Callback when state changes Open -- Shut down ; Shut down -- Open
*/
public void onStatusChanged(String provider, int status, Bundle extras) {
}
/**
* Certain 1 Location providers are available to use
*/
public void onProviderEnabled(String provider) {
}
/**
* Certain 1 Location providers can no longer be used
*/
public void onProviderDisabled(String provider) {
}
}
}
Summarize