簡體   English   中英

是否可以在三星手機上激活前置攝像頭閃光燈?

[英]Is there a possibilty to activate front camera flash on Samsung phones?

我目前正在嘗試激活Samsung Galaxy A6上的內置前閃光燈,但是該設備提供的信息類似於沒有內置前閃光燈。

我已經嘗試過其他方法,可以通過搜索激活Flash來找到。

  1. 首先嘗試獲得支持的FlashMode,然后使用setParameters(API <23)激活Flash。 但是,僅前置攝像頭的getParameters()不會返回內置前置閃光燈的任何信息。 對於該應用程序,似乎沒有可用的前置閃光燈。

  2. 然后,我嘗試使用在API> = 23中引入的Camera2 API,並且出現相同的問題。 獲取相機特征,然后檢查FLASH_INFO是否可用,只會導致返回false。 同樣嘗試使用setTorchMode(FRONT_CAMERA,true)激活閃光燈組件也會引發一個異常,該異常表示:沒有可用的閃光燈組件。

我目前僅將Samsung Galaxy A6作為帶有內置前置閃光燈的測試設備。 相同的代碼對於后置(后置)相機工作正常,沒有任何問題。

廣告1)

try {
            Camera camera;
            camera = Camera.open(cameraId);

            if (camera == null) {
                return false;
            }

            Camera.Parameters parameters = camera.getParameters();

            if (parameters.getFlashMode() == null) {
                camera.release();
                return false;
            }
    ...

它只是在此時退出,因為.getFlashMode()對於前置攝像頭返回null。 下一步將是檢查受支持的FlashMode,然后調用Camera的setParamater。

廣告2)

try {
        String camID = null;
        for(String cameraID : mCameraManager.getCameraIdList()) {
            CameraCharacteristics cameraCharacteristics = mCameraManager.getCameraCharacteristics(cameraID);

        int orientation = cameraCharacteristics.get(CameraCharacteristics.LENS_FACING);
        if (orientation == CameraCharacteristics.LENS_FACING_FRONT) {

                if(cameraCharacteristics.get(CameraCharacteristics.FLASH_INFO_AVAILABLE)) {
                        camID = cameraID;
                    }
        }

        if(camID != null) {
            mCameraManager.setTorchMode(camID, true);
        }

    } catch (Exception exc) {
        ...
    }

這些只是用於簡單激活前閃光燈的片段,但是這兩種方法的行為就像沒有內置前閃光燈的硬件響應一樣。

經過研究,似乎一些電話制造商正在使用專用API來控制硬件。 特別是三星和華為正在利用這一點。 設備上的主相機應用主要由該API控制,因此可以按預期使用Frontflash。 但是,即使像Instagram和Snapchat這樣的大型相機應用也無法擺脫這一點,並且也無法激活例如Frontflash。

出於自身目的,硬件只是不提供用於在某些設備上激活Frontflash的任何功能,它的反應就像沒有內置的frontflash。 到目前為止,沒有針對此問題的解決方案。

現有的解決方法正在使屏幕變白,以減輕手機正面的環境。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM