Java Android 10 Camera2 API:CONTROL#u EFFECT#u MODE don';行不通

Java Android 10 Camera2 API:CONTROL#u EFFECT#u MODE don';行不通,java,android,android-camera2,android-10.0,Java,Android,Android Camera2,Android 10.0,我已经在我的应用程序中实现了以下代码 previewRequestBuilder.set(CaptureRequest.CONTROL_EFFECT_MODE,CameraMetadata.CONTROL_EFFECT_MODE_NEGATIVE); 它已经在Mi9t、OnePlus 7 Pro、带Android 10的华为P20上进行了测试,但不起作用。而在Android 9(Redmi 5和OnePlus 5T)设备上。它没有显示对预览的负面影响。 我错过什么了吗 编辑:在菜单项上单击捕获

我已经在我的应用程序中实现了以下代码

previewRequestBuilder.set(CaptureRequest.CONTROL_EFFECT_MODE,CameraMetadata.CONTROL_EFFECT_MODE_NEGATIVE);
它已经在Mi9t、OnePlus 7 Pro、带Android 10的华为P20上进行了测试,但不起作用。而在Android 9(Redmi 5和OnePlus 5T)设备上。它没有显示对预览的负面影响。 我错过什么了吗

编辑:在菜单项上单击捕获时,两个捕获请求都将更新。它可以在安卓9设备上完美运行

public class MainActivity extends AppCompatActivity{
private static final CaptureRequest.Key<Integer> EFFECT = CaptureRequest.CONTROL_EFFECT_MODE;
....


 public boolean onMenuItemClick(MenuItem item) {
        switch (item.getItemId()){
            case R.id.negative:
                setCameraPreference(EFFECT,CameraMetadata.CONTROL_EFFECT_MODE_NEGATIVE);
                return true;
            case R.id.aqua:
                setCameraPreference(EFFECT,CameraMetadata.CONTROL_EFFECT_MODE_AQUA);
                return true;
            case R.id.solarize:
                setCameraPreference(EFFECT,CameraMetadata.CONTROL_EFFECT_MODE_SOLARIZE);
                return true;
            case R.id.blackboard:
                setCameraPreference(EFFECT,CameraMetadata.CONTROL_EFFECT_MODE_BLACKBOARD);
                return true;
            case R.id.sepia:
                setCameraPreference(EFFECT,CameraMetadata.CONTROL_EFFECT_MODE_SEPIA);
                return true;
            case R.id.posterize:
                setCameraPreference(EFFECT,CameraMetadata.CONTROL_EFFECT_MODE_POSTERIZE);
                return true;
            case R.id.whiteboard:
                setCameraPreference(EFFECT,CameraMetadata.CONTROL_EFFECT_MODE_WHITEBOARD);
                return true;
            case R.id.effectOff:
                setCameraPreference(EFFECT,CameraMetadata.CONTROL_EFFECT_MODE_OFF);
        }


        return false;
    }

private void setCameraPreference(CaptureRequest.Key<Integer> key,int value){
    previewRequestBuilder.set(key,value);
    pictureRequestBuilder.set(key,value);
    updatePreview();
}
 protected void updatePreview() {
   if (null == cameraDevice) {
    }
    try {
        captureSession.setRepeatingRequest(previewRequestBuilder.build(), null, null); 
    } catch (CameraAccessException e) {
        e.printStackTrace();
    }
}
编辑2:我检查了设备的可用效果:

int effects[] = characteristics.get(CameraCharacteristics.CONTROL_AVAILABLE_EFFECTS);
    for (int effect : effects){
        Log.d("camera2d", "Effects available: "+effect);
结果是:

2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 0
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 1
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 2
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 3
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 4
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 5
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 8
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 7
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 6

你能发布你的build.gradle吗?那些设备是否在其支持的效果列表()中列出了这种效果?您是否在更改此设置后生成捕获请求,并在预览和静态捕获时一致使用它?发布更多的代码可以更容易地判断可能的错误。@EddyTalvala文章已经更新。我认为android 10中的某些东西发生了变化。我会尽快查看新设备是否有更少的特效选项。你知道吗?有人可以帮忙吗?你能解决这个问题吗?
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 0
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 1
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 2
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 3
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 4
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 5
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 8
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 7
2020-05-06 11:41:44.998 24702-24702/it.runningexamples.recamera2 D/camera2d: Effects available: 6