У меня есть служба Android, которая отправляет трансляции. Я пытаюсь получить эти намерения в другом приложении, которое является сервисом Android. Я писал об этом в своем манифесте:Трансляция намерений, не полученных службой
<!-- Service -->
<service android:enabled="true" android:name="...MyService"></service>
<!-- Receiver -->
<receiver android:name="...MyReceiver">
<intent-filter>
<action android:name="..."></action>
<action android:name="..."></action>
</intent-filter>
</receiver>
и это в моем классе MyReceiver:
public class ScannerBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
// Process action.
Log.d(Globals.LOG_TAG, "Intent received.");
...
К сожалению, я никогда не получаю OnReceive метод вызывается. Любая идея почему? Я запускаю эту услугу из другого тестового приложения, поэтому это устанавливается как Android-библиотека. Служба правильно запущена, но этот приемник ничего не получает. Любая идея, что я делаю неправильно? Спасибо!
Возможно, вы неправильно зарегистрировали IntentReceiver или передали плохо настроенное намерение. Вы также должны опубликовать эти части своего кода. –
Я не зарегистрировал приемник. Это не должно быть необходимо, когда оно находится в манифесте ... Цель транслируется правильно, поскольку она получена другими приложениями, которые я написал ... –