Не пробовал, но скорее всего:
- делаешь онгоинг нотификацию
- ставишь её alertOnce
- возможно, ставишь autocancel=false
- вешаешь PendingIntent.getBroadcast() на клик
- слушаешь в ресивере на ивенты, меняешь состояние фонарика
- после смены - постишь нотификацию повторно
https://stackoverflow.com/a/15538209/2215114