0

Я использует Urls класса (код приведен ниже), чтобы установить разные адреса, которые я хочу использовать в моем приложенииПолучить данные из базы данных и использовать в интерфейсе в андроиде

public interface Urls { 
     public String SERVER_BASE_URL = "http://webaddress.com/"; 
    public String URL_DIRECT =SERVER_BASE_URL + "token.php"; 
     public String URL_DIRECT2= SERVER_BASE_URL + "token2.php"; 
     public String URL_DIRECT3= SERVER_BASE_URL + "token3.php"; 
    } 

Теперь я хочу, чтобы изменить значение от SERVER_BASE_URL от статического значения до значения из моей базы данных. IP-адрес правильно хранится в базе данных. Для этого я использую базовый код, так как мне нужно, чтобы эта страница отображалась только один раз, чтобы сохранить IP-адрес.

mydatabase = openOrCreateDatabase("IP", MODE_PRIVATE, null); 
mydatabase.execSQL("CREATE TABLE IF NOT EXISTS value1(ipaddress VARCHAR);"); 
String a = ip.getText().toString(); 
mydatabase.execSQL("INSERT INTO value1 VALUES('" + a + "');"); 

Я получаю правильный IP из базы данных, используя этот код

Cursor resultSet = mydatabase.rawQuery("Select * from value1", null); 
       resultSet.moveToFirst(); 
       address = resultSet.getString(0); 

Но я не знаю, как установить этот IP-адрес в SERVER_BASE_URL программно. Или я хочу получить значение из базы данных по каждому виду деятельности ??? Пожалуйста, помогите !!!!

+0

где вы звоните ваши скрипты? –

+0

Почти все страницы загружаются с использованием данных Json. – Pratheesh

+0

, поэтому вы будете вызывать скрипт, который сначала получит базовый url, а затем вызовет фактический скрипт? верный ? –

ответ

0

App первый запуск

InputActivity

XML:

<EditText 
android:id = "@+id/ip_address_text" 
android:layout_width = "match_parent" 
android:layout_height = "wrap_content" 
android:hint = "Enter your IP Address" 
android:inputType = "text"/> 

<Button 
android:id = "@+id/button_submit" 
android:layout_width = "wrap_content" 
android:layout_height = "wrap_content" 
android:text = "SUBMIT"/> 

Java:

EditText ipText = (EditText) findViewById(R.id.ip_address_text); 
Button submitButton = (Button) findViewById(R.id.button_submit); 
submitButton.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
SharedPreference sp = getSharedPreferences("ANY NAME FOR PREFERENCE", Context.MODE_PRIVATE); 
sp.edit().putString("ip_address", ipText.getText().toString()).apply(); 
     } 
    }); 

Сценарий Вызов активности

Java:

Перед удалением по серверу.

SharedPreference sp = getSharedPreferences("ANY NAME FOR PREFERENCE", Context.MODE_PRIVATE); 
String ipAddress = sp.getString("ip_address", "Default value"); 

Обновленный код

public interface Urls { 
SharedPreference sp = getSharedPreferences("ANY NAME FOR PREFERENCE", Context.MODE_PRIVATE); 
    public String SERVER_BASE_URL = sp.getString("ip_address", "Default value"); 
    public String URL_DIRECT =SERVER_BASE_URL + "token.php"; 
    public String URL_DIRECT2= SERVER_BASE_URL + "token2.php"; 
    public String URL_DIRECT3= SERVER_BASE_URL + "token3.php"; 
    } 

и использовать переменную URL, чтобы ударить сервер.

Ваш вопрос не указывает на конкретную деталь вместо того, чтобы спрашивать для всей реализации. Постарайтесь сузить свою проблему, которая будет полезной для решателей, чтобы ответить, а не просить весь код для реализации.

Удача !!

Справочные ссылки использовать

Shared Preferences 1

Shared Preferences 2

+0

Спасибо Рагу Сваминатан. Позвольте мне попробовать. – Pratheesh

+0

Также Ragu Swaminathan Мне не нужен весь код. Мне нужно получить идею, которая может быть реализована здесь правильно. Также я хочу изменить значение в классе 'Urls', так что мне нужно только вызвать' URL_DIRECT' или 'URL_DIRECT2' в каждом действии вместо вызова' String url = ipAddress + "token2.php" '; – Pratheesh

+0

Есть ли какой-нибудь метод для этого ???? – Pratheesh