没有这样的静态字段:'sCompatibilityDone'

no such static field: 'sCompatibilityDone'

我正在尝试用我的 android 应用程序编译 tesseract。

我面临的问题是当我尝试初始化时出现错误。

在调试期间,我看到消息 "no such static field: 'sCompatibilityDone'" 此消息在执行时显示 View.java

完全执行后出现错误,如下所述:

01-04 14:40:54.840    4010-4010/com.example.my_project E/﹕ 
file /data/data/com.nvidia.NvCPLSvc/files/driverlist.txt: not found!

产生错误的代码如下:

Bitmap bitmap= BitmapFactory.decodeResource(getResources(), R.drawable.test_img);
    TessBaseAPI tessBaseAPI=new TessBaseAPI();
    tessBaseAPI.init(OCR_RUNTIME_DIRECTORY, "jpn");

    tessBaseAPI.setImage(bitmap);

    String recText=tessBaseAPI.getUTF8Text();
    Dialog.Show(this, recText);

第 3 行产生错误。
一些定义: OCR_RUNTIME_DIRECTORY="/.../数据文件/"
Dialog 是一个class 可以在短期内完成一些操作。

谢谢!提前。

问题已解决。

有两个错误。

  1. 我正在将视图投射到 ImageView。这就是我遇到静态成员丢失问题的原因。

  2. ocr 目录必须包含 'tessdata' 目录。它在消息中。但我完全错过了。

无论如何,错误已修复,但 ocr 结果非常不正确。我想将不得不阅读一些内容。