如何解决Android Task<FirebaseVisionText> 不返回 FirebaseVisionText 类型
我正在尝试从通过 FirebaseVisionTextRecognizer 处理的图像中提取文本和块,即使处理成功,它似乎也没有以正确的类型返回。 Android studio 报告结果是 Task
这里是问题区域: '''FirebaseVisionImage fImg = FirebaseVisionImage.fromBitmap(curBitmap); FirebaseVisionTextRecognizer tscan = FirebaseVision.getInstance().getonDeviceTextRecognizer(); System.out.println("任务前");
Task<FirebaseVisionText> result =
tscan.processImage(fImg)
.addOnSuccessListener(new OnSuccessListener<FirebaseVisionText>() {
@Override
public void onSuccess(FirebaseVisionText firebaseVisionText) {
System.out.println("task success");
// Task completed successfully
// ...
}
})
.addOnFailureListener(
new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
System.out.println("task fail");
// Task Failed with an exception
// ...
}
});
String str = result.getText();'''
线路:
String str = result.getText();
报错:Cannot resolve method 'getText' in 'Task'
我尝试将结果转换为 FirebaseVisionText 以及将新的 FirebaseVisionText 设置为等于结果,但都没有解决问题。
解决方法
我通过将 String str = result.getText();
替换为 Tasks.await(result); return result.getResult();
并在新线程上调用包含函数来解决该问题:new Thread(new Runnable() { public void run() { try{ containingFunction();} catch {}}}).start();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。