Я просто запускаю простой тест, чтобы подтвердить, считается ли NetworkProvider провайдером, который стоит денег:
LocationManager manager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
criteria.setAccuracy(Criteria.ACCURACY_COARSE);
criteria.setCostAllowed(false);
String provider = manager.getBestProvider(criteria, false);
Log.d(getClass().getSimpleName(), "Best Provider is: " + provider);
Нет разницы в результатах, если я установил стоимость, разрешенную в false или true:
08-06 14:52:25.375: DEBUG/LocationPlaygroundActivity(30782): Best Provider is: network
08-06 14:52:39.860: DEBUG/LocationPlaygroundActivity(30848): Best Provider is: network
Лучшим поставщиком всегда является сеть.На данный момент кажется, что нет поставщика, который бы стоил пользователю денег.Может быть, это просто встроено для будущих возможностей определения местоположения провайдера.