修改用户存储的异步操作
This commit is contained in:
parent
b5ad8b596e
commit
6f5962c560
@ -15,5 +15,4 @@ interface PreferencesRepository {
|
|||||||
suspend fun getString(key: String): Flow<String?>
|
suspend fun getString(key: String): Flow<String?>
|
||||||
suspend fun saveInt(key: String, content: Int)
|
suspend fun saveInt(key: String, content: Int)
|
||||||
suspend fun getInt(key: String): Flow<Int?>
|
suspend fun getInt(key: String): Flow<Int?>
|
||||||
fun getUserName(): String
|
|
||||||
}
|
}
|
@ -51,16 +51,7 @@ class PreferencesRepositoryImp @Inject constructor(
|
|||||||
it[intPreferencesKey(key)]
|
it[intPreferencesKey(key)]
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun loginUser(): Flow<LoginUser?> = loginUser.data
|
override fun loginUser(): Flow<LoginUser?> {
|
||||||
|
return loginUser.data
|
||||||
override fun getUserName(): String {
|
|
||||||
Log.e("jingo", "获取用户名 开始")
|
|
||||||
var username = ""
|
|
||||||
loginUser.data.map {
|
|
||||||
username = it.username
|
|
||||||
}
|
}
|
||||||
Log.e("jingo", "获取用户名 结束后 $username")
|
|
||||||
return username
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
@ -63,6 +63,8 @@ class LoginFragment : BaseFragment() {
|
|||||||
Toast.makeText(context, "请输入密码", Toast.LENGTH_SHORT).show()
|
Toast.makeText(context, "请输入密码", Toast.LENGTH_SHORT).show()
|
||||||
return@setOnClickListener
|
return@setOnClickListener
|
||||||
}
|
}
|
||||||
|
lifecycleScope.launch{
|
||||||
|
repeatOnLifecycle(Lifecycle.State.STARTED){
|
||||||
viewModel.onClickLogin(
|
viewModel.onClickLogin(
|
||||||
viewBinding.loginUsername.text.toString(),
|
viewBinding.loginUsername.text.toString(),
|
||||||
viewBinding.loginPassword.text.toString()
|
viewBinding.loginPassword.text.toString()
|
||||||
@ -70,6 +72,6 @@ class LoginFragment : BaseFragment() {
|
|||||||
findNavController().navigate(R.id.action_login_to_home)
|
findNavController().navigate(R.id.action_login_to_home)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
@ -7,6 +7,7 @@ import com.navinfo.volvo.repository.preferences.PreferencesRepository
|
|||||||
import com.navinfo.volvo.util.asLiveData
|
import com.navinfo.volvo.util.asLiveData
|
||||||
//import com.navinfo.volvo.repository.preferences.PreferencesRepository
|
//import com.navinfo.volvo.repository.preferences.PreferencesRepository
|
||||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||||
|
import kotlinx.coroutines.Job
|
||||||
import kotlinx.coroutines.cancel
|
import kotlinx.coroutines.cancel
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import javax.inject.Inject
|
import javax.inject.Inject
|
||||||
@ -17,13 +18,9 @@ class LoginViewModel @Inject constructor(private val repository: PreferencesRepo
|
|||||||
|
|
||||||
val user = repository.loginUser()
|
val user = repository.loginUser()
|
||||||
|
|
||||||
fun onClickLogin(name: String, password: String) {
|
suspend fun onClickLogin(name: String, password: String) {
|
||||||
if (name != "") {
|
|
||||||
viewModelScope.launch {
|
|
||||||
repository.saveLoginUser(id = "", name = name, password = password)
|
repository.saveLoginUser(id = "", name = name, password = password)
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// fun onClickLoginRegister(username: String, password: String) {
|
// fun onClickLoginRegister(username: String, password: String) {
|
||||||
// if (username != "") {
|
// if (username != "") {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user