Как очистить кеш каждого приложения в моей программе телефона Android? разрешено ли очищение кэша в андроиде? если разрешено, как? Я уже пытаюсь исследовать его, и я не могу найти ответ, который мне нужен.Android: очистить кэш программно
ответ
Чтобы очистить данные приложения, пожалуйста, попробуйте этот путь. Я думаю, это поможет вам.
public void clearApplicationData()
{
File cache = getCacheDir();
File appDir = new File(cache.getParent());
if (appDir.exists()) {
String[] children = appDir.list();
for (String s : children) {
if (!s.equals("lib")) {
deleteDir(new File(appDir, s));Log.i("TAG", "**************** File /data/data/APP_PACKAGE/" + s + " DELETED *******************");
}
}
}
}
public static boolean deleteDir(File dir)
{
if (dir != null && dir.isDirectory()) {
String[] children = dir.list();
for (int i = 0; i < children.length; i++) {
boolean success = deleteDir(new File(dir, children[i]));
if (!success) {
return false;
}
}
}
return dir.delete();
}
Это забавный сценарий. В Manifest.Permission documentation
общественности статической конечной строки CLEAR_APP_CACHE
Добавлено в уровне API 1 Позволяет программе очистить кэши всех установленных приложений на устройстве.
Константа Значение: «android.permission.CLEAR_APP_CACHE»
Таким образом, вы можете получить разрешение, чтобы очистить кэш всех приложений. Но я не думаю, что в SDK есть какой-либо метод для использования этого разрешения. Поэтому вы можете просто получить разрешение и ничего не делать с этим. Странно от google.
РЕДАКТИРОВАТЬ: This Обсуждение google может представлять интерес. Dianne Hackborn конкретно говорит, что вышеупомянутое разрешение не должно присутствовать в SDK, так как API для его использования не существует.
Я нашел это:
import java.io.File;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
public class HelloWorld extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle *) {
super.onCreate(*);
setContentView(R.layout.main);
}
@Override
protected void onStop(){
super.onStop();
}
//Fires after the OnStop() state
@Override
protected void onDestroy() {
super.onDestroy();
try {
trimCache(this);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void trimCache(Context context) {
try {
File dir = context.getCacheDir();
if (dir != null && dir.isDirectory()) {
deleteDir(dir);
}
} catch (Exception e) {
// TODO: handle exception
}
}
public static boolean deleteDir(File dir) {
if (dir != null && dir.isDirectory()) {
String[] children = dir.list();
for (int i = 0; i < children.length; i++) {
boolean success = deleteDir(new File(dir, children[i]));
if (!success) {
return false;
}
}
}
// The directory is now empty so delete it
return dir.delete();
}
}
Это может быть полезно для вас.
У меня есть 30 страниц в моем проекте. Если я хочу очистить кеш, как мне это сделать. Я должен добавить этот код во все мои классы или любой из одного класса. – Vijay
вы можете расширять 'Activity' в одном классе с помощью этих методов, а затем импортировать этот класс во все действия. –
Может ли этот фрагмент очистить кеш всех приложений, установленных на устройстве? –
- 1. Orchard программно очистить кэш
- 2. Очистить Zend Кэш страниц программно
- 3. Как очистить кэш приложений программно в Marshmallow
- 4. Как очистить кэш в Windows программно?
- 5. Как очистить кэш Url в браузере в android программно?
- 6. Как программно очистить кэш приложений в Android 4.2.2 и выше
- 7. Как программно очистить кэш имен Bluetooth в Android?
- 8. Очистить кэш в Android Webview
- 9. Как очистить кэш OSMdroid
- 10. Отключить клавиатурный кэш Android программно
- 11. Как очистить кэш Silverlight MediaElement
- 12. Невозможно очистить память кэша Программно Android
- 13. Очистить кэш приложений при выходе в android
- 14. Как очистить кэш другого приложения в Android?
- 15. Как очистить кэш-память в Android?
- 16. PHP simplexml_load_file() очистить кэш
- 17. Как очистить кэш?
- 18. Как очистить кэш UserPrincipal
- 19. Linux очистить кэш
- 20. Как очистить кэш ResourceBundle
- 21. ASP.NET Очистить кэш
- 22. Очистить кэш Chicagoboss
- 23. Как очистить кэш Infinispan
- 24. Sitecore - программно очищает кэш пользователя
- 25. Как очистить кэш приложений программно с помощью ионной/кордовой?
- 26. Удалить выходной кэш программно
- 27. Как очистить кэш веб-журнала
- 28. как очистить кэш JAVA приложения
- 29. Как очистить кэш лазури Redis?
- 30. Как очистить кэш веб-сайтов?
Вы не можете использовать это разрешение, от https://developer.android.com/reference/android/Manifest.permission.html#CLEAR_APP_CACHE - Уровень защиты: система | подпись – AndroidCoolestRulest