Как отладить вещательный приемник? - PullRequest
7 голосов
/ 06 апреля 2011

С моим приложением я реализовал вещательный приемник, запущенный по общему замыслу Android. Таким образом, программа не получила интерфейс или начальную активность. Для отладки я выбрал в инструментах разработчика «ждать отладчика», и это на самом деле работает (я могу отлаживать broadcastReceiver). Моя проблема в том, что dalvik убивает мой поток (и всю отладку) через несколько секунд, поэтому я не могу проверить или попробовать пошаговые процедуры. Кто-нибудь знает, как это решить?

Ответы [ 3 ]

2 голосов
/ 26 декабря 2017

Вам нужен ваш BroadcastReceiver, чтобы иметь это в Манифесте:

android:process=":remote"

Поместите это в ваш onReceive метод:

android.os.Debug.waitForDebugger();

Затем запустите проект. После этого нажмите Присоедините отладчик к процессу Android и дождитесь появления вашего процесса (он будет иметь это имя: your.package.name:remote) в окне Выберите процесс , затем нажмите ОК и начните отладку.

enter image description here

1 голос
/ 25 мая 2015

В опциях разработчика: выберите приложение отладки -> ваше приложение. Ожидание отладчика

0 голосов
/ 03 июля 2014

Поместите ваши вещи в другую ветку:

 public void onReceive(final Context context, Intent intent) {    
    new Thread(new Runnable(){

        @Override
        public void run() {
           Log.i("foo","set me as line breakpoint.");
        }
      }).start();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...