В Android есть уведомления для этой цели, считается, что подсветка не управляется через API (это можно сделать на устройствах с root-доступом, но это уже другая история).
Лично я действительно получаю уведомления о пропущенных вызовах, и мой индикатор уведомлений мигает.Тем не менее, вы можете реализовать свои собственные уведомления:
NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
// create a new notification
CharSequence tickerText = "Missed call";
long when = System.currentTimeMillis();
Notification notification = new Notification(icon, tickerText, when);
// control how the notification led should behave
notification.ledARGB = 0xff00ff00;
// blink for 300ms every 1s
notification.ledOnMS = 300;
notification.ledOffMS = 1000;
notification.flags |= Notification.FLAG_SHOW_LIGHTS;
// usually you also want to create a PendingIntent and attach it
// with notification.setLatestEventInfo
// finally, post the notification to the notification manager
notificationManager.notify(HELLO_ID, notification);
Есть много других опций для уведомлений, таких как вибрация или FLAG_AUTO_CANCEL
, но они задокументированы очень хорошо ; -)
На рутованном устройстве вы можете выполнить следующее для управления подсветкой (однако я бы порекомендовал придерживаться заданного способа, который является уведомлением):
su
echo 25 > /sys/class/leds/button-backlight-portrait/currents
echo 25 > /sys/class/leds/button-backlight-landscape/currents
где 25
будет яркостьНо, разумеется, я точно не знаю, сработает ли это на всех устройствах.