我想通过GPS获取当前位置。但我的应用程序未被特别关闭。我无法得到原因。我已经aaded权限在AndroidManifest.xml:当前位置GPS,程序非特定地关闭
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
我想要的代码如下:
公共类MainActivity扩展活动{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public void getLoc()
{
LocationManager manager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
LocationListener listener = new MyLocationListener();
manager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 5000, 10, listener);
}
public class MyLocationListener implements LocationListener {
@Override
public void onLocationChanged(Location loc)
{
loc.getLatitude();
loc.getLongitude();
String Text = "My current location is: " + "Latitude = " + loc.getLatitude() + "Longitude = " + loc.getLongitude();
Toast.makeText(getApplicationContext(), Text, Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderDisabled(String provider)
{
Toast.makeText(getApplicationContext(), "Gps Disabled", Toast.LENGTH_SHORT).show();
}
@Override
public void onProviderEnabled(String provider)
{
Toast.makeText(getApplicationContext(), "Gps Enabled", Toast.LENGTH_SHORT).show();
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras)
{ }
}
}
你什么logcat的消息时,你的应用程序停止? Mosten时间会有某种堆栈跟踪,告诉你哪里出了问题。请在您的Eclipse-Logcat视图中找到这部分信息并将其发布到此处。 – Ridcully
您在LogCat中看到什么错误? – RvdK
顺便说一句。你可以简单地在'Activity'中需要'Context'时使用'this'(比如在你的'Toast.makeText(...)'调用中,不需要'getApplicationContext()' – Ridcully