|
@@ -28,10 +28,20 @@ class loginActivity: AppCompatActivity() {
|
|
|
// 初始化 ViewBinding
|
|
|
binding = ActivityLoginBinding.inflate(layoutInflater)
|
|
|
setContentView(binding.getRoot())
|
|
|
-
|
|
|
+ loadUserCredentials()
|
|
|
initMSDKInfoView()
|
|
|
}
|
|
|
|
|
|
+ private fun saveUserCredentials(username: String, password: String) {
|
|
|
+ val sharedPreferences = getSharedPreferences("user_prefs", MODE_PRIVATE)
|
|
|
+ with(sharedPreferences.edit()) {
|
|
|
+ putString("username", username)
|
|
|
+ putString("password", password) // 明文存储不安全,可考虑加密
|
|
|
+ apply()
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
fun generateRandomString(length: Int = 4): String {
|
|
|
val characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
|
|
|
val randomString = StringBuilder()
|
|
@@ -44,6 +54,18 @@ class loginActivity: AppCompatActivity() {
|
|
|
return randomString.toString()
|
|
|
}
|
|
|
|
|
|
+ private fun loadUserCredentials() {
|
|
|
+ val sharedPreferences = getSharedPreferences("user_prefs", MODE_PRIVATE)
|
|
|
+ val savedUsername = sharedPreferences.getString("username", "")
|
|
|
+ val savedPassword = sharedPreferences.getString("password", "")
|
|
|
+
|
|
|
+ if (!savedUsername.isNullOrEmpty() && !savedPassword.isNullOrEmpty()) {
|
|
|
+ binding.username.setText(savedUsername)
|
|
|
+ binding.password.setText(savedPassword)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
private fun initMSDKInfoView(){
|
|
|
binding.loginButton.setOnClickListener{
|
|
|
val username = binding.username.text
|
|
@@ -106,6 +128,9 @@ class loginActivity: AppCompatActivity() {
|
|
|
token?.let { nonNullToken ->
|
|
|
TokenManager.saveToken(this@loginActivity, nonNullToken)
|
|
|
ToastUtils.showShortToast("登录成功")
|
|
|
+ saveUserCredentials(username.toString(),
|
|
|
+ password.toString()
|
|
|
+ )
|
|
|
// 检查是否存在需要跳转的目标页面
|
|
|
val lastPageIntent = RedirectManager.getLastPageIntent()
|
|
|
if (lastPageIntent != null) {
|