amaach amaach - 6 months ago 177
Android Question

How to make android phone flashlight blink?

I am trying to make the LED flashlight of android phone blink based on binary code like if char = 1 turn LED light on else if char = 0 turn LED off.

if ( char == '1'){ params.setFlashMode(Parameters.FLASH_MODE_ON); }
if ( char == '0'){ params.setFlashMode(Parameters.FLASH_MODE_OFF);}


So I get the char from a
String str ="101010101"
the char gets the values 1, 0, 1 and so on, which is supposed to make the flashlight blink, however it blinks ones and that's it. How should I fix this problem?.
Thanks

Answer

Try this :

String myString = "0101010101";
long blinkDelay 50; //Delay in ms
for (int i = 0; i < myString.length(); i++) {
   if (myString.charAt(i) == '0') {
      params.setFlashMode(Parameters.FLASH_MODE_ON);
   } else {
      params.setFlashMode(Parameters.FLASH_MODE_OFF);
   }
   try {
      Thread.sleep(blinkDelay);
   } catch (InterruptedException e) {
      e.printStackTrace();
   }
}

Without the "Thread.sleep()" your code is probably too fast.