我正在测试一个应用程序,它可以选择当前位置,并将其显示在一个小部件上。我正在使用此功能,但当我尝试将准确度更改为“高”时,一切都崩溃了!
private void startListening(){
AppLog.logString("Service.startListening()");
final Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
criteria.setCostAllowed(true);
criteria.setPowerRequirement(Criteria.POWER_LOW);
final String bestProvider = manager.getBestProvider(criteria, true);
if (bestProvider != null && bestProvider.length() > 0) {
manager.requestLocationUpdates(bestProvider, 500, 10, listener);
}
else {
final List<String> providers = manager.getProviders(true);
for (final String provider : providers) {
manager.requestLocationUpdates(provider, 500, 10, listener);
}
}
}
最佳答案
将此添加到您的 AndroidManigest.xml 文件中:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
关于Android-GPS ACCURACY_HIGH 标准使我的应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11483774/