我正在开发一个设备所有者应用程序(通过 QR 码安装)在一种情况下,我需要切换用户,这涉及清除与应用程序相关的所有数据,如果该应用程序不是“设备所有者应用程序”我会用安卓
((ActivityManager) m_context.getSystemService(Context.ACTIVITY_SERVICE)).clearApplicationUserData();
但由于它是“设备所有者应用程序”,我收到以下错误:
java.lang.SecurityException:无法清除受保护包的数据
是否有任何其他 api / 方法来清除设备所有者应用程序的数据?
更新:
感谢@CommonsWare,我打电话context.deleteDatabase("db_name")
给所有数据库并像这样清除了所有 SharedPreferences
SharedPreferences.Editor editor = preferences.edit();
editor.clear();
return editor.commit();
这已经足够了......