Проблема в том, что всякий раз, когда я обновляю свое приложение на своем устройстве, размер внутренней памяти увеличивается до размера приложения.Размер памяти увеличивается каждый раз, когда я обновляю приложение на том же устройстве
У меня есть одно приложение, которое работает на планшете, связанном с приложением. то есть только это приложение будет работать на этом планшете, и это будет загрузочное приложение планшета. Благодаря этой функции я добавил код для обновления приложения внутри приложения. Я написал код для загрузки приложения с моего сервера и обновления приложения с новой версией. Также я написал код для проверки используемой памяти и полной памяти внутренней памяти устройства.
Примечание: Внешняя память отсутствует, т. Е. Для этой операции нет SD-карты.
Сценарий.
Шаг 1) Загрузите новую версию приложения в приложение и обновите его.
Шаг 2) После обновления при перезагрузке приложения я написал код на заставке, чтобы удалить все старые данные приложения. Старые данные состоят из кэша приложений, сохраненных изображений, загруженных apk и расчищенных папок, созданных приложением.
Шаг 3) Я перезагружаю устройство, чтобы проверить работоспособность. Теперь, после запуска приложения, я проверю память, предположим, что ранее используемая/общая память составляла 0,45 ГБ/5,08 ГБ. Теперь я снова следую шагу 1.
Этап 4) После перезагрузки, когда я проверяю размер внутренней памяти, удивительно, что размер памяти увеличился на 120 Мбайт, размер которого составляет +1 МБ. т.е. старый размер используемой внутренней памяти/общий 0,45 Гбит/5,08 Гбит, увеличенный размер внутренней памяти после перезагрузки и обновления приложения составляет 0,57 ГБ/5,08 ГБ
Я попытался проверить папку данных/данных, но его размер также остается неизменным, но размер внутренней памяти увеличивается до размера приложения. Я не знаю, что увеличивает размер внутренней памяти.
Есть ли место или вещь, которую ОС хранит в данных размера приложения, или мне что-то не хватает в приложении, что приводит к увеличению размера внутренней памяти до точного размера?
EDIT
код для удаления видео, которые я держу в конкретном пути
/**
* Method to delete all the videos from SD card on startup
* */
public static void deleteAllVideos() {
new Thread(new Runnable() {
@Override
public void run() {
File dir = new File(directoryPath);
try {
File[] files = dir.listFiles();
for (int i = 0; i < files.length; i++) {
files[i].delete();
}
} catch (Exception e) {
}
dir.delete();
}
}).start();
}
код для удаления APK из устройства
public static void deleteFile() {
String imagePath = Environment.getExternalStorageDirectory()
.getAbsolutePath();
File folder = new File(imagePath);
try {
File[] filenamestemp = folder.listFiles();
for (int i = 0; i < filenamestemp.length; i++) {
if (filenamestemp[i].getAbsolutePath().toString()
.endsWith(".apk"))
filenamestemp[i].delete();
}
} catch (Exception e) {
e.printStackTrace();
}
}
Удаление кэша приложений и кэшированные изображения из память
/**
* Method to clear application data
*
* @param Context
* context of screen
* */
public static void clearApplicationData(Context context) {
File cache = context.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));
}
}
}
try {
File cacheDir = null;
if (android.os.Environment.getExternalStorageState().equals(
android.os.Environment.MEDIA_MOUNTED)) {
cacheDir = new File(
android.os.Environment.getExternalStorageDirectory(),
Global.CACHE_DIRECTORY);
} else {
cacheDir = context.getCacheDir();
}
if (cacheDir.exists()) {
File[] filesList = cacheDir.listFiles();
for (File file : filesList) {
file.delete();
}
}
} catch (Exception e) {
}
}
Это удаление кода, которые я использую, чтобы удалить все содержимое, которое я создаю во внутренней памяти, включая кэш приложений
Показать соответствующий код пожалуйста. – F43nd1r
@ F43nd1r Какой код вы ожидаете? –
Особенно код, который должен удалять старый контент, но, по-видимому, нет, но все, что могло бы помочь. – F43nd1r