当设备在屏幕上显示结果时,如何让Android手电筒闪烁?

时间:2016-11-26 12:22:24

标签: android android-camera flashlight

当设备在屏幕上显示结果时,如果我想使设备手电筒闪烁。

我尝试使用此代码闪烁闪光灯,但它没有闪烁。

MainActivity.java的某些部分

public void onResult(String result) {
String tres = "\n";
String myString = "0101010101";
long blinkDelay = 50;
try {
    JSONObject j = new JSONObject(result);
    JSONObject j1 = j.getJSONObject("status");
    int j2 = j1.getInt("code");
    if(j2 == 0){
        JSONObject metadata = j.getJSONObject("metadata");
        if (metadata.has("custom_files")) {
            JSONArray musics = metadata.getJSONArray("custom_files");
            for(int i=0; i<musics.length(); i++) {
                JSONObject tt = (JSONObject) musics.get(i); 
                String title = tt.getString("title");
                tres = tres + (i+1) + ".  Title: " + title + "\n";
            }
           //Flash Light blink
            for (int i = 0; i < myString.length(); i++) {
                if (myString.charAt(i) == '0') {
                params.setFlashMode(Parameters.FLASH_MODE_ON);
                } else {
                params.setFlashMode(Parameters.FLASH_MODE_OFF);
                }
                try {
                Thread.sleep(blinkDelay);
                } catch (InterruptedException e) {
                        e.printStackTrace();
                }
            }
        }
    }else{
        tres = result;
    }
} catch (JSONException e) {
    tres = result;
    e.printStackTrace();
}

mResult.setText(tres);
}

Manifest.xml的许可

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />

我该怎么做?

谢谢!

1 个答案:

答案 0 :(得分:0)

清单中的Flashlight权限存在问题。

我建议您检查手电筒开启/关闭的建议链接:Flashlight On/Off