Реализация переключения между серверами в android приложении
Имеется программа, в которой пользователю можно будет переключаться между серверами. Есть класс, отвечающий за финализированную строку с путем (адресом) для подключения. Имеется макет и класс, где реализован Spinner и его адаптер соответственно. Как можно установить например switch / case таким образом, чтобы переменная получала необходимо значение по выбранному серверу ? P.S. Ретрофит уже реализован и требует наличие именно константной переменной.
Класс с "путем":
public class AppProperties {
private static String pIdentificator = "";
public static final String path = "path1";
public static String getpIdentificator() {
return pIdentificator;
}
public static void setpIdentificator(String pInd) {
pIdentificator = pInd;
}
}
Класс с адаптером спиннера и switch / case:
public PresenterAuthActivity(ActivityAuth cntx) {
authActivity = cntx;
DataBaseInit db = new DataBaseInit();
db.initTables();
pg = authActivity.findViewById(R.id.progressBar);
authActivity.startService(new Intent(App.getAppContext(), ServiceNetworkConnectionState.class));
//authActivity.startForegroundService(new Intent(App.getAppContext(), ServiceNetworkConnectionState.class));
helperBlockingScreen = new HelperBlockingScreen(authActivity, authActivity.findViewById(R.id.constrLayMain));
helperBlockingScreen.setMainLayout(authActivity.findViewById(R.id.constrLayMain));
ArrayList<Button> btns = new ArrayList<>();
btns.add(authActivity.findViewById(R.id.button));
helperBlockingScreen.setButtons(btns);
authHanlder = new AuthHanlder(authActivity, this);
setValuesToLogingAndPassword();
// Spinner
spinner = authActivity.findViewById(R.id.Spinner);
ArrayAdapter<?> adapter =
ArrayAdapter.createFromResource(authActivity, R.array.Server,
android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent,
View itemSelected, int selectedItemPosition, long selectedId) {
String[] choose = authActivity.getResources().getStringArray(R.array.Server);
switch (selectedItemPosition) {
case 1:
AppProperties.path = "mobileraids_test";
break;
case 2:
AppProperties.path = "path2";
break;
case 3:
AppProperties.path = "path3";
break;
}
Toast toast = Toast.makeText(authActivity.getApplicationContext(),
"Ваш выбор: " + choose[selectedItemPosition], Toast.LENGTH_SHORT);
toast.show();
}
public void onNothingSelected(AdapterView<?> parent) {
}
});
}