当我第一次将以下代码放入Android Studio
时,它突出显示了很多错误:
import java.util.List;
public void enableAutofocus()
{
camera = camera.open();
Camera.Parameters parameters = camera.getParameters();
List<String> focusModes = parameters.getSupportedFocusModes();
if (focusModes.contains(Camera.Parameters.FOCUS_MODE_AUTO))
{
parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);
}
camera.setParameters(parameters);
}
所以,我做了alt+enter
并插入了正确的导入:
import android.hardware.Camera;
import java.util.List;
public class OcrFocusPluginClass
{
public void enableAutofocus()
{
camera = Camera.open();
Camera.Parameters parameters = camera.getParameters();
List<String> focusModes = parameters.getSupportedFocusModes();
if ( focusModes.contains(Camera.Parameters.FOCUS_MODE_AUTO) )
{
parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_AUTO);
}
camera.setParameters(parameters);
}
}
但紧接着,小写camera
现在有红色下划线。
我意识到Camera
界面已被弃用,因此我为新应用程序添加了新的android.hardware.camera2
API:
import android.hardware.camera2;
但是现在除了camera
代码之外,所有焦点代码再次突出显示错误。
我错过了什么?
答案 0 :(得分:1)
如果您使用Camera.
替换所有android.hardware.Camera.
个实例,则所有错误都将消失。该类仍然被弃用,但它可能会有效。
固定代码示例:
android.hardware.Camera camera = android.hardware.Camera.open();
如果您想了解camera2的实现,您可能需要查看 Android camera android.hardware.Camera deprecated