BroadcastReciever не работает или AlarmManager не настроен - PullRequest
0 голосов
/ 12 апреля 2020

Я пытаюсь настроить BroadcastReceiver с AlarmManager, и только для целей тестирования он вызывает 2000 миллисекунд после. Однако ничего не происходит

Основной класс

Intent intent = new Intent(this, test_class.class);
        PendingIntent alarmIntent = PendingIntent.getBroadcast(this, 0, intent, 0);
        Log.d("ALARM_DE","Set for: "+System.currentTimeMillis() + 2000);
        AlarmManager alarmManager =
                (AlarmManager) getSystemService(Context.ALARM_SERVICE);
        alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 2000 ,
                AlarmManager.INTERVAL_DAY, alarmIntent);

Получающий класс

public class test_class extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) {
            // Set the alarm here.
        }
        Log.d("ALARM_DE","Time: "+System.currentTimeMillis());
    }

}

AndroidManifest. xml

<receiver android:name=".test_class" android:exported="false" >
            <intent-filter>
                <action android:name="NOTIFICATION_SERVICE" />
            </intent-filter>
        </receiver>

1 Ответ

0 голосов
/ 12 апреля 2020

Решил проблему! Я просто добавил intent.setAction("NOTIFICATION"); после инициализации намерения, и оно прошло! Любая строка должна делать работу:)

...