criteria.setAltitudeRequired(true); criteria.setBearingRequired(true); criteria.setSpeedRequired(true); criteria.setCostAllowed(true);
//All your normal criteria setup Criteria criteria = new Criteria(); //Use FINE or COARSE (or NO_REQUIREMENT) here criteria.setAccuracy(Criteria.ACCURACY_FINE); criteria.setPowerRequirement(Criteria.POWER_LOW); criteria.setAltitudeRequired(true); criteria.setSpeedRequired(true); criteria.setCostAllowed(true); criteria.setBearingRequired(true); //API level 9 and up criteria.setHorizontalAccuracy(Criteria.ACCURACY_HIGH); criteria.setVerticalAccuracy(Criteria.ACCURACY_HIGH); criteria.setBearingAccuracy(Criteria.ACCURACY_LOW); criteria.setSpeedAccuracy(Criteria.ACCURACY_MEDIUM);
criteria.setAltitudeRequired(true); criteria.setBearingRequired(true); criteria.setSpeedRequired(true); criteria.setCostAllowed(true);
Criteria criteria = new Criteria(); criteria.setSpeedRequired(true); LocationProvider[] providers = mLocationManager.getProviders(criteria, false); if (providers == null || providers.length == 0) { //Sorry it doesn't do it by default. }
Criteria criteria = new Criteria(); criteria.setSpeedRequired(true);
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); Criteria locationMode = new Criteria(); locationMode.setBearingRequired(false); locationMode.setSpeedRequired(true); locationMode.setAccuracy(Criteria.ACCURACY_MEDIUM); locationManager.requestSingleUpdate(locationMode, new LocationListener() {@Override public void onLocationChanged(Location location) { } @Override public void onStatusChanged(String provider, int status, Bundle extras) { } @Override public void onProviderEnabled(String provider) { } @Override public void onProviderDisabled(String provider) { } }, null); }
*Criteria is use for setting accuracy* Criteria criteria = new Criteria(); int currentapiVersion = android.os.Build.VERSION.SDK_INT; if (currentapiVersion >= android.os.Build.VERSION_CODES.HONEYCOMB) { criteria.setSpeedAccuracy(Criteria.ACCURACY_HIGH); criteria.setAccuracy(Criteria.ACCURACY_FINE); criteria.setAltitudeRequired(true); criteria.setBearingRequired(true); criteria.setSpeedRequired(true); }
Criteria criteria = new Criteria(); criteria.setAccuracy(Criteria.ACCURACY_COARSE); criteria.setAltitudeRequired(false); criteria.setSpeedRequired(false); criteria.setBearingRequired(false); criteria.setCostAllowed(false); final LocationManager manager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); .... LocationListener listener = new LocationListener() { @Override public void onLocationChanged(Location lastKnownLocation) { .... } // rest of interface } manager.requestSingleUpdate(criteria, listener, null);
public String getProviderName() { LocationManager locationManager =(LocationManager)this.getSystemService(Context.LOCATION_SERVICE); Criteria criteria = new Criteria(); criteria.setPowerRequirement(Criteria.POWER_LOW); criteria.setAccuracy(Criteria.ACCURACY_FINE); criteria.setSpeedRequired(true); criteria.setAltitudeRequired(false); criteria.setBearingRequired(false); criteria.setCostAllowed(false); return locationManager.getBestProvider(criteria, true); }
LocationManager manager = (LocationManager)getSystemService(Context.LOCATION_SERVICE); Criteria criteria = new Criteria(); criteria.setAccuracy(Criteria.ACCURACY_COARSE); criteria.setAltitudeRequired(false); criteria.setSpeedRequired(false); criteria.setBearingRequired(false); criteria.setCostAllowed(false); LocationListener listener = new LocationListener() { @Override public void onLocationChanged(Location lastKnownLocation) { if (lastKnownLocation != null) { // whatever needs to be done } } manager.requestSingleUpdate(criteria, listener, null);
criteria.setAltitudeRequired(false); criteria.setBearingRequired(false); criteria.setSpeedRequired(false);
criteria.setSpeedRequired(false); criteria.setAccuracy(Criteria.ACCURACY_FINE); criteria.setCostAllowed(true);
criteria.setSpeedRequired(false); criteria.setAccuracy(Criteria.ACCURACY_FINE); criteria.setCostAllowed(true);
//All your normal criteria setup Criteria criteria = new Criteria(); //Use FINE or COARSE (or NO_REQUIREMENT) here criteria.setAccuracy(Criteria.ACCURACY_FINE); criteria.setPowerRequirement(Criteria.POWER_LOW); criteria.setAltitudeRequired(true); criteria.setSpeedRequired(true); criteria.setCostAllowed(true); criteria.setBearingRequired(true); //API level 9 and up criteria.setHorizontalAccuracy(Criteria.ACCURACY_HIGH); criteria.setVerticalAccuracy(Criteria.ACCURACY_HIGH); criteria.setBearingAccuracy(Criteria.ACCURACY_LOW); criteria.setSpeedAccuracy(Criteria.ACCURACY_HIGH);
criteria.setSpeedRequired(false); criteria.setAccuracy(Criteria.ACCURACY_FINE); criteria.setCostAllowed(true);
String m_BestProvider; LocationManager m_LocationManager; LocationListener m_LocationListener = null; Location m_Location = null; m_LocationManager = (LocationManager) m_Context.getSystemService(Context.LOCATION_SERVICE); Criteria c = new Criteria(); c.setAccuracy(Criteria.ACCURACY_COARSE); c.setAltitudeRequired(false); c.setBearingRequired(false); c.setSpeedRequired(false); c.setCostAllowed(true); c.setPowerRequirement(Criteria.POWER_HIGH); m_BestProvider = m_LocationManager.getBestProvider(c, false); // Define a listener that responds to location updates m_LocationListener = new LocationListener() { public void onLocationChanged(Location location) { // Called when a new location is found by the network location provider. } public void onStatusChanged(String provider, int status, Bundle extras) {} public void onProviderEnabled(String provider) {} public void onProviderDisabled(String provider) {} }; m_LocationManager.requestLocationUpdates(m_BestProvider, 0, 0, m_LocationListener); m_Location = m_LocationManager.getLastKnownLocation(m_BestProvider); Systme.out.println(m_Location.getLatitude() "," +m_Location.getLongitude());
Location loc; //Will hold lastknown location Location wptLoc = new Location(""); // Waypoint location float dist = -1; float bearing = 0; float heading = 0; float arrow_rotation = 0; LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); loc = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER); if(loc == null) { //No recent GPS fix Criteria criteria = new Criteria(); criteria.setAccuracy(Criteria.ACCURACY_FINE); criteria.setAltitudeRequired(false); criteria.setBearingRequired(true); criteria.setCostAllowed(true); criteria.setSpeedRequired(false); loc = lm.getLastKnownLocation(lm.getBestProvider(criteria, true)); } if(loc != null) { wptLoc.setLongitude(cursor.getFloat(2)); //Cursor is from SimpleCursorAdapter wptLoc.setLatitude(cursor.getFloat(3)); dist = loc.distanceTo(wptLoc); bearing = loc.bearingTo(wptLoc); // -180 to 180 heading = loc.getBearing(); // 0 to 360 // *** Code to calculate where the arrow should point *** arrow_rotation = (360+((bearing + 360) % 360)-heading) % 360; }