-1

我正在使用Urls类(下面给出的代码)来设置我想在我的应用程序中使用的不同 url

    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);

但我不知道如何以SERVER_BASE_URL编程方式将此 IP 设置为。或者我想从每个活动的数据库中获取价值???请帮忙!!!!

4

1 回答 1

0

应用首次启动

输入活动

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"/>

爪哇:

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();
      }
    });

脚本调用活动

爪哇:

在击中服务器之前。

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 访问服务器。

您的问题不是指向特定部分,而是要求整个实施。尝试缩小您的问题,这将有助于解决者回答,而不是要求整个代码实现。

祝你好运!!

参考链接使用

共享偏好 1

共享偏好 2

于 2016-01-04T10:08:37.713 回答