2

LG Optimus 3Dモデルを使用していますが、カメラをビデオ録画モードに切り替えるとトーチライトをオンにできます。通常のキャプチャモードでは、フラッシュライトをオンにすることしかできません。

Cameraオブジェクトにさまざまなパラメータを追加していくつかの方法を試しましたが、どれも機能しません。私のコードは以下の通りです:

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



    PackageManager pm = getPackageManager();

    if (! pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)){
        Toast.makeText(this, "Your phone does not have flash light support.", Toast.LENGTH_LONG).show();
        finish();
    }

    camera = Camera.open(); 
    cParameters = camera.getParameters();



    cParameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
camera.setParameters(cParameters);

}

プログラムでオンにすることはできません。電話がトーチモードをサポートしていることを確認するために、以下のようにチェックしました。実際、デバイスで実際にオンにすることができます。

List<String> abc = cParameters.getSupportedFlashModes();

        for (String a : abc){
            Log.d("mode: ", a);
}

とにかくそれをするのを手伝ってください?*ファームウェアは2.2です

4

1 に答える 1

1

以下を使用してください

 context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);

フラッシュが利用可能かどうかを確認します。trueまたはfalseを返します。

実際にコードを実装する方法については、こちらをご覧ください。

Android懐中電灯をオンにする方法

Androidでカメラの懐中電灯を使用する

Androidでプログラムでカメラのフラッシュライトをオンにする方法は?

于 2012-09-02T10:24:57.687 に答える