Я работаю над активностью Android, которая стремится включать и выключать светодиодные фонари разными цветами.Устройство имеет два светодиодных индикатора, один для питания и один для зарядки.Каждый из них может загореться синим, зеленым, красным и желтым.К сожалению, при использовании кода, который работает для отдельного устройства, светодиодные индикаторы на этом не срабатывают.Как бы я найти, как это сделать для этого устройства?Вот как выглядит мой код: Примечание. Я использую API 22, а переменные led_xxx содержат целое число для каждого соответствующего цвета
private void controlLED(int id, int color)
{
Notification notif = new Notification();
notif.flags = Notification.FLAG_SHOW_LIGHTS;
notif.defaults = 0;
notif.ledARGB = color;
if (color == led_off)
{
notif.ledOnMS = 0;
notif.ledOffMS = 1;
}
else
{
notif.ledOnMS = 1;
notif.ledOffMS = 0;
}
mNm.notify(id, notif);
}
public void LEDHandler()
{
LEDHandler = new Handler(new Handler.Callback()
{
public boolean handleMessage(Message msg)
{
switch (LEDstep)
{
case 1:
controlLED(1, led_red);
break;
case 2:
controlLED(1, led_blue);
break;
case 3:
controlLED(1, led_green);
break;
case 4:
controlLED(1, led_yellow);
break;
case 5:
controlLED(1, led_off);
led_clicked = true;
mLEDButton.setClickable(true);
mPassButton.setClickable(true);
mPassButton.setVisibility(View.VISIBLE);
break;
default:
LEDstep = 1;
LEDHandler.removeMessages(WHAT);
return true;
}
LEDstep++;
LEDHandler.sendEmptyMessageDelayed(msg.what, 500);
return true;
}
});
}
public void CreateHandlers()
{
LEDHandler();
}
public void onLEDButtonClick(View view)
{
mLEDButton.setClickable(false);
LEDHandler.sendEmptyMessageDelayed(1, 500);
}
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_led);
mNm = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);
InitViews();
CreateHandlers();
}
Спасибо за любую помощь.