44 lines
1.4 KiB
Java
44 lines
1.4 KiB
Java
package com.dragonssh.xhttpdemo;
|
|
|
|
import android.app.Application;
|
|
import android.content.SharedPreferences;
|
|
|
|
import com.dragonssh.xhttpdemo.core.XHttpSshCore;
|
|
import com.dragonssh.xhttpdemo.core.config.Settings;
|
|
|
|
public final class DemoApplication extends Application {
|
|
private static final String BOOTSTRAP_PREFS = "demo_bootstrap";
|
|
private static final String DEFAULTS_CREATED = "defaults_created";
|
|
|
|
private volatile String savedPassword = "";
|
|
private Settings settings;
|
|
|
|
@Override
|
|
public void onCreate() {
|
|
super.onCreate();
|
|
SharedPreferences prefs = getSharedPreferences(BOOTSTRAP_PREFS, MODE_PRIVATE);
|
|
if (!prefs.getBoolean(DEFAULTS_CREATED, false)) {
|
|
Settings.setDefaultConfig(this);
|
|
prefs.edit().putBoolean(DEFAULTS_CREATED, true).apply();
|
|
}
|
|
settings = new Settings(this);
|
|
savedPassword = settings.getPrivString(Settings.SSH_PASSWORD_KEY);
|
|
XHttpSshCore.init(this);
|
|
}
|
|
|
|
String getSessionPassword() {
|
|
return savedPassword;
|
|
}
|
|
|
|
void setSessionPassword(String password) {
|
|
savedPassword = password == null ? "" : password;
|
|
settings.getPrefsPrivate().edit()
|
|
.putString(Settings.SSH_PASSWORD_KEY, savedPassword)
|
|
.apply();
|
|
}
|
|
|
|
boolean hasSessionPassword() {
|
|
return savedPassword != null && !savedPassword.isEmpty();
|
|
}
|
|
}
|