Android: как заставить светодиод камеры вашего телефона мигать при получении звонков, сообщений или уведомлений

Я разрабатываю приложение, которое будет работать в фоновом режиме каждый раз. теперь мне нужна функция, например, если пользователь получает телефон или сообщение или какое-либо уведомление, тогда вспышка должна мигать, пока телефон не зазвонит или не завибрирует.

я использую приведенный ниже код, чтобы включить вспышку

// Turning On flash
private void turnOnFlash() {
 if (!isFlashOn) {
     if (camera == null || params == null) {
         return;
     }
     // play sound
    // playSound();
     params = camera.getParameters();
     params.setFlashMode(Parameters.FLASH_MODE_TORCH);
     camera.setParameters(params);
     camera.startPreview();
     isFlashOn = true;

     // changing button/switch image
  //   toggleButtonImage();
 }

}

но вспышка не включается

и ниже код, чтобы получить камеру

private void getCamera() {
 if (camera == null) {
     try {
         camera = Camera.open();
         params = camera.getParameters();
     } catch (RuntimeException e) {
         Log.e("Camera Error. Failed to Open. Error: ", e.getMessage());
     }
 }
}

это код .. logcat печатает исключение и говорит cannot connect to camera service. поэтому в классе flashturnOn камера получает значение null, возвращается и завершает класс без включения фонарика.

Спасибо за любую помощь


person Sukhwant Singh Grewal    schedule 02.04.2015    source источник
comment
извини @SuvenduShekharGiri .. я ищу начальную идею. я много гуглю, но не могу получить никакой помощи   -  person Sukhwant Singh Grewal    schedule 02.04.2015
comment
Посетите github.com/CUTR-at-USF/walk-bright. Это приложение просто начинает периодически мигать экраном и мигать при запуске.   -  person Sean Barbeau    schedule 02.04.2015


Ответы (1)


Лучший способ начать — попробовать код, используемый для создания приложения-фонарика, например здесь. Для включения:

  params = camera.getParameters();
    params.setFlashMode(Parameters.FLASH_MODE_TORCH);
    camera.setParameters(params);
    camera.startPreview();

для выключения

params = camera.getParameters();
    params.setFlashMode(Parameters.FLASH_MODE_OFF);
    camera.setParameters(params);
    camera.stopPreview();
person Dominik Niziński    schedule 02.04.2015
comment
thnxxx .. главное знать что телефон звонит .. как это сделать ? - person Sukhwant Singh Grewal; 02.04.2015
comment
androidexample.com/ ‹ должен помочь вам - person Dominik Niziński; 02.04.2015