Android Tesseract进程回调

Android Tesseract进程回调,android,tesseract,Android,Tesseract,因此,我最终设法使该文件得以编译。一切都按预期进行,除了我不介意一些进度回电。我查看了包装器类和本机包装cpp代码,但没有涉及进度的内容 有没有一种简单的方法来调查Tesseract是否取得了某种进展?我在Tesseract源代码方面达到了顶峰,但作为一个母语为Java的人,这让我感到害怕 考虑到Tesseract在进度时间方面的变化程度,给用户一天的时间,并称之为一天似乎是不好的。如果是我,花了30多秒没有任何反馈,我会重试或放弃。首先,由于OCR过程可以被视为一项“长期运行的任务”,因此将其

因此,我最终设法使该文件得以编译。一切都按预期进行,除了我不介意一些进度回电。我查看了包装器类和本机包装cpp代码,但没有涉及进度的内容

有没有一种简单的方法来调查Tesseract是否取得了某种进展?我在Tesseract源代码方面达到了顶峰,但作为一个母语为Java的人,这让我感到害怕


考虑到Tesseract在进度时间方面的变化程度,给用户一天的时间,并称之为一天似乎是不好的。如果是我,花了30多秒没有任何反馈,我会重试或放弃。

首先,由于OCR过程可以被视为一项“长期运行的任务”,因此将其放入异步任务中。诸如I/O、网络或图像处理之类的任务应该放在异步任务中,因为您不希望在主UI线程上运行。如果用户的手机规格很低,那么如果您将其保留在主UI线程上,则会花费一些时间,最终导致应用程序不响应错误

关于进度条,您有几个选项。如果您有一个有限的时间限制,如30秒,则将进度设置为达到该限制,如果OCR过程快于30秒,则提前完成。您也可以使用底层的本机代码,但这可能不值得付出努力


或者,在我看来,最好的方法是在OCR过程中设置一个圆形微调器,因为图像可能会不同,而且您不知道需要多长时间。

现在有一个Java接口: