Articles of мусора

Разница в поведении сборщика мусора на устройстве Android против эмулятора

Я тестирую использование памяти приложения в эмуляторе. И проблема в том, что на эмуляторе куча приложений только растет и растет, освобождается лишь немного ресурсов. И если коллекции не будут созданы, это вызовет исключение OutOfMemory на экранах с большим разрешением. Я загрузил SDK Sony, и есть эмулятор конфигурации для Xperia Z, который имеет разрешение 1080×1920, а […]

В приложении React Native JavaScript, почему поведение Android GC изменится, если я создаю временную переменную вместо прямого значения?

Я чувствую, что может быть ошибка где-то в Android GC, JavaScriptCore или, возможно, в Genymotion. Я тестирую приложение React Native на Android, поэтому весь мой код написан на JavaScript (а не на Java). Я пытаюсь разобраться с крахом, который я воспроизвел на следующих эмуляторах Android: Samsung Galaxy S6 – 6.0.0 – API 23 Google Nexus […]

Причины, по которым мое приложение для Android постоянно разбивается на моем телефоне, но не на моем эмуляторе

У меня есть приложение, в котором используется довольно много графических элементов. Когда я открываю и закрываю свое приложение повторно на эмуляторе (1.5 – 2.2), он работает нормально, и, проверяя кучу, я вижу, что все очищается и gc'd правильно. Однако, когда я запускаю свое приложение на телефоне HTC Aria (2.1), приложение падает каждый раз, когда я […]

Фатальный сигнал 11 (SIGSEGV), когда GC запускается после вызова KeyChain.getPrivateKey

Я получаю фатальный сигнал 11 (SIGSEGV) в своем приложении. Это происходит после нажатия кнопки (выполняется onClick ), получения закрытого ключа для псевдонима KeyChain, а затем, когда сборщик мусора запускается в следующий раз. Дополнительная информация: Я могу воспроизвести это только на Samsung Galaxy S3 (установлен Android 4.1.2) Нет ANR-Dialog, приложение просто закрыто Ошибка возникает в следующий […]

Существует ли бессмертный объект?

В этой статье: Xamarin – используйте слабые ссылки на предотвращение бессмертных объектов. Он говорит, что если два объекта сильно ссылаются друг на друга, они станут imortal, то есть GC не сможет их собрать, даже если объекты больше не используются приложением. Однако в этих двух обсуждениях SO: Сборщик мусора и циркулярная ссылка Циркулярные ссылки Причина утечки […]

OnReceive асинхронные операции и сбор мусора

Является ли поток метода onReceive подходящим для сбора мусора до его завершения? @Override public void onReceive(final Context context, Intent intent) { final int alarmId = intent.getExtras().getInt(EXTRA_ALARM_ID); Log.i(TAG, "/onReceive with an alarmVo.id of " + alarmId); // RUN MY THREAD new Thread(new Runnable() { @Override public void run() { AlarmUtil.setNextAlarm(context, alarmId); } }).start(); } Из того, […]

Получить список запущенных процессов и убить их фоновые службы

Я создаю приложение для Android для оптимизации ОЗУ. Я могу успешно получить список запущенных процессов (и их PID), используя этот ответ . Тем не менее, я не вижу способа убить их или их фоновые сервисы с помощью PID.

Монодроид: выполнение полного GC

Я пытаюсь создать свою маленькую систему частиц. У меня есть ParticleManager со списком частиц и нарисовать мои частицы на холсте. Я создаю любые новые объекты, такие как Paint и т. Д., Только как раз в функции init ()! Если размер частиц <0, я удаляю его: for (int particle = 0; particle < particles.Count; particle++) { […]

Почему потоки протекают на Android?

Я заметил в нашем приложении Android, что каждый раз, когда мы выходим на главный экран, мы увеличиваем размер кучи (утечки) на количество ByteArrayOutputStream. Лучшим, с чем я смог справиться, является добавление this.mByteArrayOutputStream = null; В конце run (), чтобы предотвратить увеличение размера кучи. Если бы кто-нибудь мог просветить меня, я был бы очень благодарен. Я […]

OnCreate и OnNewIntent оба вызываются, когда действие Destroy проверяется в опции разработчика

Существует опция разработчика в android-Destroy Activity, как только пользователь ее покинет. Поэтому, когда я проверяю эту активность и запускаю свою активность с одним верхним флагом. Я видел, что оба мои onCreate и OnNewIntent вызывались при запуске приложения после нажатия кнопки «Главная». Может ли кто-нибудь объяснить, почему обе функции были вызваны, а также она была вызвана […]

Intereting Posts
Можно ли «принудительно остановить» приложение, которое я отлаживаю, используя adb в терминале? Узел сбора мусора в Android запущен, но ничто не отображается как выделенное в трекере распределения ddms Android – Как использовать инструмент Android Asset Packaging Tool? Как отобразить выбор даты для андроида с полями только месяца и года? Является ли OAuth на мобильном телефоне с помощью прокси-сервера слишком много неприятностей? Есть ли какая-либо единая структура для написания iOS, Android (и даже Windows Phone)? Dialog – указанный ребенок уже имеет родителя. Вы должны сначала вызвать removeView () родителя ребенка Android Dropbox API не сохраняет логин Показать клавиатуру для EditText в эмуляторе (GenyMotion) Android 4.3 ExpandableListView – как установить разделитель только между родительскими элементами Пространства SPAN_EXCLUSIVE_EXCLUSIVE не могут иметь нулевую длину Намерение открыть настройки Wi-Fi Direct Приложение не отвечает – AOSP Можно ли прочитать историю затрат на звонки из диалога, поднятого после окончания предоплаченного вызова? MyLocationOverlay устарел, любая альтернатива?