我使用下面的代码来获取用户的当前位置。此代码在模拟器中工作,但是当我在移动设备中使用此应用程序时,它无法提供当前的经度和纬度。
我在android清单文件中使用<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
这段代码。
请给我解决方案......我的代码在下面
public class MenuPage extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.menupage);
LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
LocationListener locListener = new MyLocationListener();
locationManager.requestLocationUpdates( LocationManager.GPS_PROVIDER, 0, 0, locListener);
}
/ *启动类MyLocationListener以获取用户* /
的当前位置public class MyLocationListener implements LocationListener
{
@Override
public void onLocationChanged(Location crurrentLocation)
{
Log.v("WHERE ","onLocationChanged()");
crurrentLocation.getLatitude(); // get current latitude
crurrentLocation.getLongitude(); // get current longitude
longitude=crurrentLocation.getLongitude();
latitude= crurrentLocation.getLatitude();
Log.v("WHERE ","onLocationChanged() Latitude="+latitude);
Log.v("WHERE ","onLocationChanged() Longitude="+longitude);
Toast.makeText(getApplicationContext(),"Latitud="+crurrentLocation.getLatitude(),Toast.LENGTH_SHORT).show();
Toast.makeText(getApplicationContext(),"Longitud="+crurrentLocation.getLongitude(),Toast.LENGTH_SHORT).show();
send_current_location = new Send_Current_location_ToServer();
// Send current location to server
String server_message = send_current_location.sendData(userid,latitude,longitude);
// String text ="My current location is: " + "Latitud = " + crurrentLocation.getLatitude() + "Longitud = " + crurrentLocation.getLongitude();
// Toast.makeText(getApplicationContext(),text,Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderDisabled(String provider)
{
Log.v("WHERE ","onProviderDisabled()");
Toast.makeText( getApplicationContext(),"Gps Disabled",Toast.LENGTH_SHORT ).show();
}
@Override
public void onProviderEnabled(String provider)
{
Log.v("WHERE ","onProviderEnabled()");
Toast.makeText( getApplicationContext(),"Gps Enabled",Toast.LENGTH_SHORT).show();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras)
{
Log.v("WHERE ","onStatusChanged()");
}
}/* End of Class MyLocationListener */
}