如何通过使用ActivityManager
关闭应用程序来清除我的应用程序数据
ActivityManager am = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
boolean res = am.clearApplicationUserData();
我尝试使用上面的代码和应用程序退出没有任何警告
我希望能够清除数据,然后在标志上写入新数据库,并在将数据写入SharedPrefences
后重新启动应用程序
注意:am.clearApplicationUserData()
用于清除用户数据,但我没有收回标志以确定清除是否成功。
日志:ActivityManager:强制完成活动ActivityRecord {65dc437 u0 {package} / {package} .WelcomeActivity t794}
ActivityManager:强制完成活动ActivityRecord {65dc437 u0 {package} / {package} WelcomeActivity t794 f}
ActivityManager:ActivityRecord的重复完成请求{65dc437 u0 {package} / c {package} WelcomeActivity t794 f}
ActivityManager:强制停止{package} appid = 10142 user = -1:clearApplicationUserData
ActivityManager:Killing 3343:{package} / u0a142(adj 900):stop {package}
ActivityManager:cleanUpApplicationRecord - 3343
clearApplicationUserData()
旨在像这样工作,一旦你调用它,应用程序进程将被杀死,没有任何警告。根据您的描述,您只需手动删除数据库并重新创建一个新数据库,而不是重置不能有效回答您的请求的整个应用程序数据。