从ADB清除缓存?


13

如何通过ADB清除缓存(应用程序,单个应用程序,Dalvik,ART,如果可能)?

对于我来说,使用应用程序,恢复或通过“设置”进行操作不是我的选择。另外,我的手机没有植根。



您是否只想清除缓存,还是缓存+数据也可以?我认为这是您的原始问题,您在此处发布了修剪后的版本。
Firelord

非常感谢您的回复。我实际上希望仅清除缓存,但保留数据。似乎在没有生根的情况下不可能擦除Dalvik缓存。我还没有找到任何人谈论以任何方式擦除ART缓存的任何人。(我发布了一个新问题,该问题更具体且密度较小,因为另一个问题似乎使人们吓退了。是的,我想这很糟糕,但从技术上讲,这个问题更具体,因此有所不同。)
LakeHMM

Answers:


17

ADB已经关闭,但是adb shell pm clear <package_name>要清除选定应用程序中的缓存(以及数据,oops),需要root(就像清除Dalvik缓存一样)。但是,有一种类似的方法只是清除所有应用程序缓存(尽管不是Dalvik / ART):fastboot erase cache可以通过将设备启动到引导加载程序中来做到这一点。可以在以下位置找到详细信息:有用的ADB和Fastboot命令以及如何使用它们


看起来很有希望!我仍然不清楚如何去做。 adb reboot bootloader而且adb reboot fastboot似乎都只是正常重启电话。我不知道他们应该怎么做,但它看起来像是常规重新启动,并且将我带入常规UI。然后,fastboot devices即使列出,也什么也没列出adb devices。我试过了fastboot erase cache,但这只能说< waiting for device >永远。为了能够执行,我到底需要做什么fastboot erase cache
LakeHMM 2015年

1
如果您看到一个UI,则肯​​定不是fastboot / bootloader模式。Bootloader是您可以引导到的最低级别,可以说这是一个非常基本的操作系统。您可以使用我们的fastboot标签wiki进行检查,并为您的设备搜索其问题,以了解如何使其进入该模式。如果您不知道,欢迎提出新的问题。是的,fastboot devices只会在快速启动模式下报告您的设备-在此模式下adb devices不会报告任何内容。
伊兹

所以有没有办法只清除缓存?@Izzy
傻眼了

我不知道@Shayan –除了在根目录上的设备(有关此信息,请参阅Seo的答案)。
伊齐

3

如果您具有root用户访问权限,则可以使用adb清除缓存。

rm -r /data/dalvik-cache
rm -r /cache/dalvik-cache

这需要root用户,并且问题询问如何在没有root用户的情况下执行此操作。
Dakatine '16

@Seo Shark这将删除所有应用程序的缓存,有什么方法可以删除特定应用程序的缓存?
莎彦
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.