У меня есть приложение, которое заботится о некоторых функциях молчания, но я не могу заставить его работать, когда телефон спит и не подключен к компьютеру. Все работает нормально, когда экран включен, но он перестает работать, когда телефон спит. Любая идея, что я делаю неправильно? Я проверил здесь 100 других сообщений, но я просто не могу определить свою проблему.BroadcastReciever не стреляет, когда телефон спит
Мой сигнализации менеджер, который делает намерение:
Intent intent2 = new Intent(this, Silence.class);
PendingIntent pendingIntent2 = PendingIntent.getBroadcast(this, 1000 + id, intent2, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager am2 = (AlarmManager)getSystemService(Activity.ALARM_SERVICE);
am2.setRepeating(AlarmManager.RTC_WAKEUP, cal2.getTimeInMillis(), AlarmManager.INTERVAL_DAY * 7, pendingIntent2);
Broadcast Ресивер:
public class MainSilenceCatcherVibrate extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent1) {
WakeLocker.acquire(context);
System.out.println("test");
WakeLocker.release();
}
}
Manifest использования:
<uses-permission android:name="android.permission.WAKE_LOCK" />
<receiver android:name=".Silence"></receiver>
<activity android:name=".ContactActivity"></activity>
Я зашел в свое приложение и указал, что он должен выстрелить 1 мин из «сейчас» (относительно того, когда я тестирую). И когда экран включен или я подключен для отладки, тогда нет проблем. Проблема возникает, когда я отцепляюсь от компьютера (так что он действительно спит), поскольку он, судя по всему, приводит меня в тихий режим, вместо того, чтобы что-то печатать. Он меня отключает, когда я поворачиваю экран вручную, а не раньше (и даже если я использую PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP, экран не загорается, когда он не подключен к компьютеру). – Reaver
@ user2523881: Используйте ** 'adb shell dumpsys alarm' **, чтобы убедиться, что ваш будильник настроен правильно. Если вы находитесь на SONY Xperia, который предлагает режим STAMINA, отключите это или добавьте приложение в белый список. – CommonsWare
Спасибо за отзыв о режиме STAMINA. Как оказалось, у меня есть Sony Xperia, и оптимизация батареи Xperia делает мое приложение неспособным получить трансляцию. – Reaver