我编写了下面的代码以获得最好的提供者。
private static String provider;
public static String setCriteria(LocationManager locationManager) {
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setAltitudeRequired(false);
criteria.setBearingRequired(false);
criteria.setCostAllowed(true);
criteria.setPowerRequirement(Criteria.POWER_MEDIUM);
provider = locationManager.getBestProvider(criteria, true);
LocationProvider locProvide = locationManager.getProvider(provider);
if (provider == null) {
provider = LocationManager.GPS_PROVIDER;
}
return provider;
}
我有这个代码来找到我将用来获取位置的提供者。现在我要检查的是提供者的状态。我从文档中读到 LocationProvider 有 3 个可用状态、停止服务和 TEMPORARILY_UNAVAILABLE。现在我在请求位置监听器之前我需要检查状态。
如果状态为例如 TEMPORARILY_UNAVAILABLE 或停止服务,则用户将相应地收到消息,否则它将找到该位置。所以我的问题是如何检查状态?
如果有人有任何想法,请帮助我...