Intereting Posts
Как получить моментальный снимок карты из активности выбора места? Почему нам нужен сериализуемый объект для передачи одного действия другому действию в android Создавать прогресс, доступный программно Можно ли показать предварительный просмотр RecyclerView в редакторе макета с горизонтальной ориентацией? Увеличение видимости представления на Swipe с помощью жестов в android Ошибка прерывания RequestFactory в Eclipse Ошибка: выполнение выполнено для задачи ': app: clean'. Не удалось удалить файл Как отображать подсказку в android? Robolectric: IllegalStateException: вам необходимо использовать тему Theme.ppCompat (или потомка) с этим действием IllegalStateException с использованием библиотеки эффектов Ripple на устройствах Android M Изменение сбоев в ориентации устройства. Работа при использовании AutoCompleteTextView и CursorAdapter Подключение моего устройства Android с помощью Visual Studio 2015 RC Android ADB – не может быть распознан LG G Pad (VK810) C ++ OpenCV imread не работает в Android Динамически устанавливать цвет темы

Активность просочилась IntentReceiver, которая была первоначально зарегистрирована здесь. Вам не хватает приглашения на unregisterReceiver ()?

01-16 16:52:42.211: E/ActivityThread(2529): Activity com.Civilcourage.CivilcurageSplash has leaked IntentReceiver com.google.android.gcm.GCMBroadcastReceiver@405282e0 that was originally registered here. Are you missing a call to unregisterReceiver()? 

В чем причина вышеуказанной ошибки? Как его можно избежать?

Вам необходимо отменить регистрацию получателей при остановке вашей деятельности:

 @Override protected void onStop() { unregisterReceiver(yourReceiver); super.onStop(); } 

Не полагайтесь onStop () , потому что :

Обратите внимание, что этот метод никогда не может быть вызван в ситуациях с низкой памятью, когда в системе недостаточно памяти, чтобы поддерживать процесс вашей активности после вызова метода onPause ()

Подробнее о жизненном цикле деятельности здесь .

Отмените регистрацию своего приемника в onPause ():

 @Override protected void onPause() { super.onPause(); unregisterReceiver(yourReceiver); } 

Вы можете отменить регистрацию, как только вы получите трансляцию

 @Override public void onReceive(Context context, Intent intent) { getActivity().unregisterReceiver(this); 

Отменить регистрацию вашего приемника на onStop () является действительным ответом. Не называть его onPause () методом.

 @Override protected void onStop() { unregisterReceiver(yourReceiverName); super.onStop(); }