Мне пришлось столкнуться с похожим сценарием. Я также пользователь AlarmManager периодически запускаю службу, где WiFi должен быть включен всегда, даже если экран телефона заблокирован. Я обнаружил, что изменение политики сна Wi-Fi, как вручную, так и программно, было достаточно для многих устройств и не нужно было использовать wakelock. Однако на некоторых устройствах HTC я обнаружил, что этот параметр не работает вообще ночью. Я наблюдал за своим приложением и узнал, что Wi-Fi отключится между 00:00 (полночь) и 7:00 по утрам - все время будет работать как шарм. Я также нашел пост в другом месте (не StackOverflow), где автор упомянул что-то о специальных настройках для HTC телефонов в состоянии справиться с этой проблемой:
Settings.System.putInt(getContentResolver(), "smartsync_turn_off_wifi", 0);
Это произошло примерно один и полтора года назад, и используя этот параметр, я сохранил на любом устройстве HTC до Android 3.1, по крайней мере до недавнего времени. Не так давно некоторые пользователи нашего приложения сообщают, что их HTCs с Android 4.x не делают то, что они должны делать, потому что WiFi отключается ночью, поэтому кажется, что таинственная настройка, которую я использовал, не работает больше на новых устройствах.
Anyways, @AndroidDev, так как ваша проблема и моя проблема кажутся несколько связанными, я хотел бы знать, удалось ли вам решить ее, и если ответ утвердительный, как это сделать.