清除所有共享首选项并将用户发送到主要 Activity 后:
this.getSharedPreferences("userData", 0).edit().clear().apply()
finishAffinity()
startActivity(Intent(this, MainActivity::class.java))
应用程序崩溃是因为后台仍有几个与首选项相关的任务/计时器。在我将用户发送到主要 Activity 之前,您如何才能完成所有事情?
我尝试过这个:
val intent = Intent(Intent.ACTION_MAIN)
intent.addCategory(Intent.CATEGORY_HOME)
startActivity(intent)
但它只是将应用程序置于后台,当我将其返回前台后,它崩溃了。有没有什么解决方案可以停止一切并开始特定 Activity ,而不需要一一完成所有后台任务?
最佳答案
您可以尝试commit()而不是apply(),并获取返回值是否所有数据都清除成功!
这是docs .
关于java - Android kotlin/java - 注销 : clear shared preferences and stop all processes in background,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54058190/