我正在使用功能Camera.Area:

if (params.getMaxNumMeteringAreas() > 0){ // check that metering areas are supported
List<Camera.Area> meteringAreas = new ArrayList<Camera.Area>();

Rect areaRect1 = new Rect(-100, -100, 100, 100);    // specify an area in center of image
meteringAreas.add(new Camera.Area(areaRect1, 600)); // set weight to 60%
Rect areaRect2 = new Rect(800, -1000, 1000, -800);  // specify an area in upper right of image
meteringAreas.add(new Camera.Area(areaRect2, 400)); // set weight to 40%
params.setMeteringAreas(meteringAreas);
}


但是,当我尝试运行时,程序给了我例外。 NoSuchErrorMethodError in params.getMaxNumMeteringAreas() and NoClassDefFoundError in meteringAreas.add(new Camera.Area(areaRect1, 600));.

有谁知道错误的严重程度?

最佳答案

上述API的Android文档指出,从API 14开始可以使用它,这意味着它仅在ICS和以上设备上可用。

您可能正在使用也包含ICS packae的最新Android SDK进行编译,但是该设备可能运行任何较旧的Android版本。因此,请首先检查您正在运行的设备上的Android版本是否为ICS。

10-06 05:16