diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index a7bfdc0..1f804ca 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -2,6 +2,7 @@ diff --git a/app/src/main/java/com/dshwatch/app/SettingsActivity.java b/app/src/main/java/com/dshwatch/app/SettingsActivity.java index 879cbf3..aca6ade 100644 --- a/app/src/main/java/com/dshwatch/app/SettingsActivity.java +++ b/app/src/main/java/com/dshwatch/app/SettingsActivity.java @@ -15,6 +15,10 @@ public class SettingsActivity extends AppCompatActivity { private EditText userId; private EditText token; private EditText web; + private EditText frp; + private EditText hermesUrl; + private EditText hermesKey; + private EditText apiKey; private TextView watchStatus; private TextView hermesStatus; private WatchBridge watchBridge; @@ -28,6 +32,10 @@ public class SettingsActivity extends AppCompatActivity { userId = findViewById(R.id.input_user); token = findViewById(R.id.input_token); web = findViewById(R.id.input_web); + frp = findViewById(R.id.input_frp); + hermesUrl = findViewById(R.id.input_hermes_url); + hermesKey = findViewById(R.id.input_hermes_key); + apiKey = findViewById(R.id.input_apikey); watchStatus = findViewById(R.id.watch_status); hermesStatus = findViewById(R.id.hermes_status); @@ -35,6 +43,10 @@ public class SettingsActivity extends AppCompatActivity { userId.setText(SettingsStore.userId(this)); token.setText(SettingsStore.token(this)); web.setText(SettingsStore.webUrl(this)); + frp.setText(SettingsStore.frpAddress(this)); + hermesUrl.setText(SettingsStore.hermesUrl(this)); + hermesKey.setText(SettingsStore.hermesKey(this)); + apiKey.setText(SettingsStore.apiKey(this)); Button save = findViewById(R.id.btn_save); save.setOnClickListener(new View.OnClickListener() { @@ -46,6 +58,9 @@ public class SettingsActivity extends AppCompatActivity { userId.getText().toString().trim(), token.getText().toString().trim()); SettingsStore.saveWebUrl(SettingsActivity.this, web.getText().toString().trim()); + SettingsStore.saveFrp(SettingsActivity.this, frp.getText().toString().trim()); + SettingsStore.saveHermes(SettingsActivity.this, hermesUrl.getText().toString().trim(), hermesKey.getText().toString().trim()); + SettingsStore.saveApiKey(SettingsActivity.this, apiKey.getText().toString().trim()); Toast.makeText(SettingsActivity.this, "已保存", Toast.LENGTH_SHORT).show(); } }); diff --git a/app/src/main/java/com/dshwatch/app/SettingsStore.java b/app/src/main/java/com/dshwatch/app/SettingsStore.java index 35ec36c..d28f5c9 100644 --- a/app/src/main/java/com/dshwatch/app/SettingsStore.java +++ b/app/src/main/java/com/dshwatch/app/SettingsStore.java @@ -9,6 +9,10 @@ public class SettingsStore { private static final String KEY_USER = "userId"; private static final String KEY_TOKEN = "token"; private static final String KEY_WEB = "webUrl"; + private static final String KEY_FRP = "frpAddress"; + private static final String KEY_HERMES_URL = "hermesUrl"; + private static final String KEY_HERMES_KEY = "hermesKey"; + private static final String KEY_APIKEY = "apiKey"; public static void save(Context c, String serverUrl, String userId, String token) { SharedPreferences p = c.getSharedPreferences(PREFS, Context.MODE_PRIVATE); @@ -38,4 +42,28 @@ public class SettingsStore { public static void saveWebUrl(Context c, String url) { c.getSharedPreferences(PREFS, Context.MODE_PRIVATE).edit().putString(KEY_WEB, url == null ? "" : url).apply(); } + public static String frpAddress(Context c) { + return c.getSharedPreferences(PREFS, Context.MODE_PRIVATE).getString(KEY_FRP, ""); + } + public static void saveFrp(Context c, String v) { + c.getSharedPreferences(PREFS, Context.MODE_PRIVATE).edit().putString(KEY_FRP, v == null ? "" : v).apply(); + } + public static String hermesUrl(Context c) { + return c.getSharedPreferences(PREFS, Context.MODE_PRIVATE).getString(KEY_HERMES_URL, ""); + } + public static String hermesKey(Context c) { + return c.getSharedPreferences(PREFS, Context.MODE_PRIVATE).getString(KEY_HERMES_KEY, ""); + } + public static void saveHermes(Context c, String url, String key) { + c.getSharedPreferences(PREFS, Context.MODE_PRIVATE).edit() + .putString(KEY_HERMES_URL, url == null ? "" : url) + .putString(KEY_HERMES_KEY, key == null ? "" : key) + .apply(); + } + public static String apiKey(Context c) { + return c.getSharedPreferences(PREFS, Context.MODE_PRIVATE).getString(KEY_APIKEY, ""); + } + public static void saveApiKey(Context c, String v) { + c.getSharedPreferences(PREFS, Context.MODE_PRIVATE).edit().putString(KEY_APIKEY, v == null ? "" : v).apply(); + } } diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml index 7941774..b07787b 100644 --- a/app/src/main/res/layout/activity_settings.xml +++ b/app/src/main/res/layout/activity_settings.xml @@ -76,6 +76,68 @@ android:textColor="@color/white" android:textColorHint="@color/light_blue" /> + + + + + + + + + + + + + + + +