1

我正在尝试为我的 motorola fire xt-530 创建一个手电筒应用程序。检查响应切换按钮的此代码。

public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
        if (isChecked) {
            if (getApplicationContext().getPackageManager().hasSystemFeature(
                    PackageManager.FEATURE_CAMERA_FLASH)) {
                camera = Camera.open();
                params = camera.getParameters();
                List<String> flashModes = params.getSupportedFlashModes();
                if (flashModes == null) {
                    Toast.makeText(getApplicationContext(), "No Flash Found",
                            Toast.LENGTH_SHORT).show();
                } else {
                    camera.startPreview();
                    if (flashModes.contains(Parameters.FLASH_MODE_TORCH)) {
                        Toast.makeText(getApplicationContext(),
                                "Torch Mode Found", Toast.LENGTH_SHORT).show();
                        params.setFlashMode(Parameters.FLASH_MODE_TORCH);
                        camera.setParameters(params);
                        camera.takePicture(null, null, null);
                    } else {
                        Toast.makeText(getApplicationContext(),
                                "Torch Mode Not Found", Toast.LENGTH_SHORT).show();
                    }
                }
            } else {
                Toast.makeText(getApplicationContext(), "Not Available",
                        Toast.LENGTH_SHORT).show();
            }
        } else {
            camera.stopPreview();
            camera.release();
            Toast.makeText(getApplicationContext(), "Not Checked",
                    Toast.LENGTH_SHORT).show();
        }

未找到火炬模式。没有扎根。请帮我。

4

1 回答 1

0

并非所有 Android 手机都支持手电筒模式(我相信你的手机就是其中之一)。然而,一种解决方案是根手机并设置支持它的自定义 ROM。另一种可能是尝试使用 FLASH_MODE_ON 解决方法,或者您甚至可以尝试触发 FLASH MODE TORCH,即使它不在支持的列表中。我有几个案例。

于 2012-08-17T12:59:38.347 回答