Переключение сервера в Android - PullRequest
0 голосов
/ 09 июля 2019

«Мне нужно переключить Базовый URL на основе местоположения пользователя и изменить другие компоненты пользовательского интерфейса».

Я пытался на протяжении Build Config, но не нашел ничего, что могло бы показатьсяна работу.

1 Ответ

0 голосов
/ 09 июля 2019

Сначала вам нужно добавить серверы в файл strings.xml, затем вы можете использовать его для получения названия страны расположения, после чего в случае переключения вы можете изменить сервер

@Override
protected void onResume() {
    String country_name = null;
    LocationManager lm =
            (LocationManager)getApplicationContext().getSystemService(Context.LOCATION_SERVICE);
    Geocoder geocoder = new Geocoder(getApplicationContext());
    for(String provider: lm.getAllProviders()) {
        @SuppressWarnings("ResourceType") Location location = lm.getLastKnownLocation(provider);
        if(location!=null) {
            try {
                List<Address> addresses = geocoder.getFromLocation(location.getLatitude(), location.getLongitude(), 1);
                if(addresses != null && addresses.size() > 0) {
                    country_name = addresses.get(0).getCountryName();
                    break;
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
    Toast.makeText(getApplicationContext(), country_name, Toast.LENGTH_LONG).show();
}
...