【问题标题】:Android: how to make your phone's camera LED flash when receiving calls, messages, or notificationsAndroid:如何在接听电话、消息或通知时让手机的摄像头 LED 闪烁
【发布时间】:2015-04-02 06:31:46
【问题描述】:

我正在开发一个每次都会在后台运行的应用程序。现在我想要一个功能,比如如果用户收到电话或消息或任何通知,那么闪光灯应该闪烁直到电话响起或振动。

我正在使用下面的代码来打开闪光灯

// 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 类中,camera 为空,它返回并结束类而不打开手电筒

感谢xxx的帮助

【问题讨论】:

  • 对不起@SuvenduShekharGiri .. 我正在寻找开始的想法。我谷歌了很多,但无法得到任何帮助
  • 查看github.com/CUTR-at-USF/walk-bright。这个应用程序只是开始定期闪烁屏幕并在您启动时闪烁。

标签: android android-notifications flashlight


【解决方案1】:

最好的开始方式是尝试用于制作手电筒应用程序的代码,例如here 开启:

  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();

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2013-04-27
  • 1970-01-01
  • 2016-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多