Запуск приложения из BroadCastReceiver (NEW_OUTGOING_CALL не всегда работает)

Итак, я написал приложение, которое начинается с набора определенного номера, я использовал NEW_OUTGOING_CALL(получатель широкого спектра), чтобы перехватить событие набора номера. До сих пор получатель широкого спектра в моем AndroidManifest.xml похож на следующий код:

<receiver android:name=".CustomBroadCastReceiver">
    <intent-filter>
         <action android:name="android.intent.action.NEW_OUTGOING_CALL" />
    </intent-filter>
</receiver>

Проблема в том, что когда я пробую его на новой системе, он сначала не работает, но после нескольких тестов он начинает работать. Я проверил журналы Android и думаю, что он даже не регистрируется в качестве приемника вещания. Я не смог найти причину такого поведения в справочнике по Android, и хочу узнать, не сталкивался ли кто-нибудь с такой же проблемой и не нашел ли ее решения,

Пожалуйста, примите во внимание, что этот широкополосный приемник является стартовым триггером моего приложения.

Я также прочитал кое-что об остановленных пакетах, и я хочу знать, связано ли это с моим делом, и если это так, есть ли способ установить флаги, такие как FLAG_INCLUDE_STOPPED_PACKAGES на AndroidManifest.xml

====== ====== Отредактировано

После того, как я в первый раз вызываю следующую команду в оболочке adb

am broadcast -n com.package.name/.StartApp

Эта строка появляется в журнале эмулятора

06-15 11:17:53.216: INFO/ActivityManager(74): Start proc com.package.name for broadcast com.package.name/.StartApp: pid=2153 uid=10041 gids={3003}

И тогда получатель широкого набора регистрируется в эмуляторе. Похоже, мое приложение должно быть запущено для регистрации получателя широкого диапазона.

1 ответ

Я не смог найти ничего в документации Android, но, потратив часы на тестирование этого случая на разных устройствах, я обнаружил, что приемники вещания регистрируются только после выполнения приложения. Таким образом, очевидно, что одно действие должно быть запущено после установки, и тогда все работает отлично.

Другие вопросы по тегам