MTK前置摄像头去掉闪光灯图标

本文介绍了一个针对Android设备摄像头应用中的PickerManager类实现细节。该类继承自ViewManager并实现了PickerListener接口,主要用于处理前置摄像头场景下iPhone闪光灯选择器的显示逻辑。通过对不同摄像头ID的判断来控制用户界面元素的可见性。
 vendor/mediatek/proprietary/packages/apps/Camera/src/com/android/camera/manager/PickerManager.java 
index 62829a6..d3181d8 100755
@@ -39,6 +39,7 @@ package com.android.camera.manager;
 import android.view.View;
 
 import com.android.camera.CameraActivity;
+import com.android.camera.CameraHolder;
 import com.android.camera.Log;
 import com.android.camera.ModeChecker;
 import com.android.camera.R;
@@ -737,6 +738,10 @@ public class PickerManager extends ViewManager implements PickerListener,
  mLivePhoto.setVisibility(View.INVISIBLE);
  break;
  }
+ int frontCameraId = CameraHolder.instance().getFrontCameraId();
+ if (frontCameraId == getContext().getCameraId()) {  //前置摄像头
+ mIphoneFlashPicker.setVisibility(View.GONE);
+ }
     }
     //@}
 }
MTK平台使用GPIO控制闪光灯,不同场景下有不同的操作方法: ### 闪光灯驱动移植方法 - 配置 `ProjectConfig.mk` 文件:在 `mediatek/config/pjt/ProjectConfig.mk` 文件中,进行如下配置 `CUSTOM_HAL_FLASHLIGHT = constant_flashlight` 和 `CUSTOM_KERNEL_FLASHLIGHT = constant_flashlight`。 - 修改 GPIO 定义:使用 `mediatek/dct/DrvGen.exe` 修改 GPIO63,定义为 `#define GPIO_CAMERA_FLASH_EN_PIN (GPIO63 | 0x80000000)`。 - 确定 GPIO 控制管脚:在 `mediatek/custom/common/kernel/flashlight/constant_flashlight` 中,设置 `#define FLASH_GPIO_ENF GPIO63`,这里 GPIO63 为闪光灯的 GPIO 控制管脚 [^2]。 ### PWM 模式闪光灯驱动配置方法 供电引脚配置时,除 flash torch 两个供电引脚按照常规配置 gpio 模式外,需另外将 ENM pin 配置成 pwm 模式。在 dtsi 中添加如下代码: ```plaintext flash_light_pwm_pin: flash_light_pwm_pin { pins_cmd_dat { pinmux = <PINMUX_GPIOxxx__FUNC_PWMx>; slew-rate = <1>; output-high; }; }; ``` 此代码实现了对 PWM 模式闪光灯引脚的配置 [^3]。 ### 配置 GPIO 控制前置闪光灯方法 可通过如下数组配置来控制前置闪光灯: ```c /* {TYPE, CT, PART, "NAME", CHANNEL, DECOUPLE} */ {1, 0, 0, "flashlights-subflashlight-gpio", 1, 0}, ``` 其中,`TYPE` 为 0 表示 Rear led set,1 表示 front led set;`CT` 为 0 表示 High color temp,1 表示 low color temp;`PART` 为 HW part,若不确定则只修改 part 0 [^4]。 ### 基于特定平台的 GPIO 控制驱动添加方法 以 MTK6765 平台 Android 9.0 (kernel - 4.9)为例,可添加 GPIO 控制驱动来实现对闪光灯的 GPIO 控制,不过引用中未详细说明具体添加步骤 [^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值