title: Android Turn on/off Camera Flash Programmatically with Camera2
body: <p>I am making a simple application that acts as a flashlight.  I need to be able to turn on and off the flash from a button in the application with the Camera2 API, as I get errors with the old camera API.  I would like to use a "torch" flashlight, where the camera doesn't have to open in order for the flash to turn on.  I know it's possible, as lots of phones have a flash on/off in the quick settings menu, but I can't find any code or tutorials about how to do this.</p>
  
  <p>Code:</p>
  
  <pre><code>Camera cam = Camera.open();     
  Parameters p = cam.getParameters();
  p.setFlashMode(Parameters.FLASH_MODE_TORCH);
  cam.setParameters(p);
  cam.startPreview();
  </code></pre>
  
  <p>I am running on a Nexus 6P with Android 6.0.1.</p>
  
  <p>EDIT: I need to use the Camera2 API.  I haven't found a good tutorial for this yet, and after getting an answer, I will create one in Q/A format on here.</p>