当前位置: 首页 > 面试题库 >

Android:使用相机检测手机周围的亮度(光线量)吗?

龚鸿羽
2023-03-14
问题内容

以下内容适用于Android操作系统。

我正在尝试使用相机估计手机所处房间的黑暗(或明亮)。

这个想法是相机可以返回一定的亮度水平,我可以用它来确定手机周围的光量。

我的问题很简单:如何使用摄像头(背面摄像头的前部)获得这种亮度(“光量”)?

提前致谢。


问题答案:

在光传感器上注册侦听器的方法如下:

private final SensorManager mSensorManager;
private final Sensor mLightSensor;
private float mLightQuantity;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    // Obtain references to the SensorManager and the Light Sensor
    mSensorManager = (SensorManager)getSystemService(SENSOR_SERVICE);
    mLightSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);

    // Implement a listener to receive updates
    SensorEventListener listener = new SensorEventListener() {
        @Override
        public void onSensorChanged(SensorEvent event) {
            mLightQuantity = event.values[0];
        }
    }

    // Register the listener with the light sensor -- choosing
    // one of the SensorManager.SENSOR_DELAY_* constants.
    mSensorManager.registerListener(
            listener, lightSensor, SensorManager.SENSOR_DELAY_UI);
}

编辑: 感谢@AntiMatter的建议更新。

文件:
SensorEventListener
SensorManager
SensorEvent
Sensor




 类似资料:
  • 我正在开发一款Android应用程序,它需要检测运行应用程序的设备附近的智能手机数量。为此,我有一个计划蓝牙BLE扫描的工作实现。我检测到附近的BLE设备没有问题,但在扫描结果中似乎找不到任何智能手机。 我的问题是:我们可以在Android上使用BLE扫描检测其他智能手机吗?(具体来说;如果我们无法控制其他智能手机中的设置)。 我尝试使用以下蓝牙库扫描BLE设备: RxAndroidBle 为了尝

  • 有没有一种方法可以检测我周围的所有Wifi设备,并从android设备获取信号强度。 为了实验性使用,我想在某些Android设备上运行应用程序。该应用程序应记录每部手机与其他手机之间的信号强度。我希望“连接”直接在手机之间,而不使用外部路由器。我相信这是可能的,因为Android手机具有作为Wifi路由器的功能,因此可能会被其他设备检测到。但我不知道如何以编程方式解决这个问题。 有人能帮忙吗?你

  • 本文向大家介绍Android手机信号强度检测详细介绍,包括了Android手机信号强度检测详细介绍的使用技巧和注意事项,需要的朋友参考一下 最近到处在跑着找工作,难免在面试过程中遇到这样那样的问题,记得最清楚一次在面试过程中被问到,当手机处于弱网状态下,如何处理,如何监听网络信号强度变化。但是真是蒙了,回答的乱七八糟,思路一点都不明确。今天小编在这里带领大家了解下关于手机信号强度的相关几个概念。

  • 我正在制作一个小的3D世界,现在我正在修理相机。 相机停留在世界中的固定位置,而世界可以用鼠标和键盘围绕它移动(模拟相机在世界中移动)。 以下是我的draw函数中的代码: 只要我站着不动,环顾四周,一切都很好。另一方面,当我移动时,奇怪的事情开始发生。 首先,相机的Y坐标会发生变化,但它应该固定在Y=8(这就是为什么我将场景转换为-8) 第二,当我试图在世界中移动时,向前按应该只沿着z轴移动,但你

  • 问题内容: 我知道在iPhone上的Safari中,您可以通过侦听事件并查询角度来检测屏幕的方向和方向变化。 Android手机上的浏览器有可能吗? 明确地说,我想问的是,运行在标准网页上的JavaScript是否可以检测到Android设备的旋转。可以在iPhone上使用,我想知道是否可以在Android手机上完成。 问题答案: 要检测Android浏览器上的方向变化,请将侦听器附加到上的或事件

  • 以下术语是什么意思:A2DP、LE、APTX?