0

Motorola XYBoard で一定時間懐中電灯をオンにするアプリを作成しています。以下は私のコードです。このコードは Motorola Attrix と Samsung Galaxy Note 10.1 で動作しますが、XYBoard では動作しません。サポートされているフラッシュ モードを確認しましたが、トーチはその 1 つです。他の人が同様の問題に直面しているスタックオーバーフローに関する複数の議論を読みましたが、私が試したものは何も機能しませんでした。誰かが私を助けてくれたら本当に助かります

public void flashLightOn() {

    try {
        if (getPackageManager().hasSystemFeature(
                PackageManager.FEATURE_CAMERA_FLASH)) {

            cam = Camera.open();
            Parameters p = cam.getParameters();
            List<String> abc = p.getSupportedFlashModes();

            for (String a : abc){
                Log.d("mode: ", a);
    }
            p.setFlashMode(Parameters.FLASH_MODE_OFF);
            p.setFlashMode(Parameters.FLASH_MODE_TORCH);

            cam.setParameters(p);
            cam.startPreview();
           /* cam.autoFocus(new AutoFocusCallback() {
                public void onAutoFocus(boolean success, Camera camera) {
                }
            });*/

        } else {

        }
    } catch (Exception e) {
        e.printStackTrace();
        Toast.makeText(getBaseContext(), "Exception flashLightOn()",
                Toast.LENGTH_SHORT).show();
    }
}


public void flashLightOff() {
    try {
        if (getPackageManager().hasSystemFeature(
                PackageManager.FEATURE_CAMERA_FLASH)) {
            cam.stopPreview();
            cam.release();
            cam = null;
        }
    } catch (Exception e) {
        e.printStackTrace();
        Toast.makeText(getBaseContext(), "Exception flashLightOff",
                Toast.LENGTH_SHORT).show();
    }
}
4

1 に答える 1

0

App Store からたいまつアプリの 1 つをインストールすると、アプリはインテントを使用してアプリを呼び出すだけです。

このようにコーディングが少なくなります!

于 2013-01-23T03:06:30.887 に答える