Как использовать два веб-сервиса в Android?

#java #android

#java #Android

Вопрос:

Мое приложение будет опубликовано в двух разных местах, и у нас есть автономный сервер и база данных для обоих двух мест. Я разместил свой веб-сервис на обоих двух серверах. Я хочу создать единый APK для обоих местоположений. Я создал один экран, на котором пользователь выберет свое местоположение, и я сохраняю значение в сеансе в соответствии с выбранным местоположением. Теперь я хочу использовать URL веб-сервиса в соответствии со значением сеанса. Как я могу этого добиться?

 public class AppConfig {

    private static String TAG = SessionManager.class.getSimpleName();

    // Shared Preferences
    SharedPreferences pref;

    SharedPreferences.Editor editor;
    Context _context;

    // Shared pref mode
    int PRIVATE_MODE = 0;

    // Shared preferences file name
    private static final String PREF_NAME = "Login";

    AppConfig appConfig = new AppConfig(_context.getApplicationContext());

    public static String BASE_URL = appConfig.apiDecider();

    public static String login = BASE_URL   "Login";

    public AppConfig(Context context) {
        this._context = context;
        pref = _context.getSharedPreferences(PREF_NAME, PRIVATE_MODE);
        editor = pref.edit();
    }

    public String apiDecider(){

        String lc = pref.getString("locationSession", null);

        //String lc = locationPref.getString("locationSession", null);

        String url = "";

        if (lc.equals("U") amp;amp; lc != null) {

            url = "";

        } else if (lc.equals("S") amp;amp; lc != null) {

            url = "";
        }

        return url;
    }
}
  

Комментарии:

1. почему бы не использовать два разных варианта сборки? Но если у вас есть способ решить, какой URL использовать, то в чем проблема?

2. Я хочу управлять одним apk.

3. Просто создайте глобальную переменную для базового URL и присвоите значение в соответствии с выбранным пользователем местоположением.

4. я делаю то же самое, поэтому я создал функцию для присвоения значения

5. Тогда это должно сработать, с какой проблемой вы столкнулись? Пожалуйста, укажите точную проблему, о которой идет речь.