我无法使用以下方法清除App Data,我正在使用植根设备API 19。
public static void clearAppData() {
try {
Process su = Runtime.getRuntime().exec("su");
DataOutputStream outputStream = new DataOutputStream(su.getOutputStream());
outputStream.writeBytes(pm clear com.xxx.xxx.xxx);
outputStream.flush();
outputStream.writeBytes("exit\n");
outputStream.flush();
su.wait(2000);
} catch (Exception e) {
Log.e("Set Time", e.getMessage());
}
}
我正在测试中调用上述方法,但无法清除Cache。我已经做了同样的事情来更改设备时间,并且有效
在以下测试中调用上述方法:
@Test
public void a_test() {
CommonUtil.clearAppData();
CommonUtil.changetime();
CommonUtil.pausetime(5000);
}
答案 0 :(得分:1)
这与以下解决方案一起使用,跳过了adb命令并创建了以下方法
public static void clearSharedPrefs(Context context) {
SharedPreferences sharedPreferences = context.
getSharedPreferences(KEY_SP_PACKAGE, Context.MODE_PRIVATE);
// sharedPreferences.edit().remove("KEY").commit(); //Remove Key
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.clear();
editor.commit();
}