Не удается разрешить символ FirebaseVisionTextDetector

Когда я вставляю свой модуль, я получаю ошибку Cannot resolve symbol FirebaseVisionTextDetector:

import com.google.firebase.ml.vision.text.FirebaseVisionTextDetector;

Я не могу понять почему, потому что в gradle у меня есть правильная реализация:

implementation 'com.google.firebase:firebase-ml-vision:18.0.1'

Решено

Решил переходом на 16.0.0. Все еще не знаю, почему.

implementation 'com.google.firebase:firebase-ml-vision:16.0.0'

Попробуйте «сделать кеш недействительным и перезапустить», а затем перестройте проект (синхронизируется автоматически)

J-me 27.10.2018 17:09

@ J-me, спасибо. Я пробовал, но ничего не изменилось.

Stefano 27.10.2018 17:12

Мне очень жаль, но тогда я не совсем уверен, в чем проблема, так как я еще не знаю, какие шаги вы предприняли. Пожалуйста, попробуйте руководство это, оно может вам помочь.

J-me 27.10.2018 17:53

@ J-me, спасибо. Я обновил вопрос.

Stefano 28.10.2018 11:25
4
4
2 852
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Пожалуйста, проверьте ссылка на список классов и интерфейсов, какой комплект ML предоставляется в пакет vision.text. так что я думаю, вам нужно воспользоваться помощью класса FirebaseVisionTextRecognizer.

Вот пример, как вы можете использовать класс FirebaseVisionTextRecognizer.

Ответ принят как подходящий

Понижение версии на самом деле не является решением. Есть много исправления ошибок и обновления, которые вы должны поставлять вместе с вашим приложением.

FirebaseVisionTextDetector class was removed in firebase-ml-vision:17.0.0 , it was last available in firebase-ml-vision:16.0.0 they have changed it to FirebaseVisionTextRecognizer.

Между обоими классами есть не большая разница. Так что вперед, продолжать и делай изменения.

Изменения, которые необходимо внести:

До (v-16.0.0):

FirebaseVisionTextDetector
FirebaseVisionTextDetector.detectInImage(image)
List<FirebaseVisionText.Block> resultsBlocks = results.getBlocks();
for (FirebaseVisionText.Block block : resultsBlocks) {
            for (FirebaseVisionText.Line line : block.getLines()) {
                //...
            }
        }

После (v-18.0.1):

FirebaseVisionTextRecognizer
FirebaseVisionTextDetector.processImage(image)
List<FirebaseVisionText.TextBlock> blocks = results.getTextBlocks();
    for (FirebaseVisionText.TextBlock block : blocks) {
         // ...
        }
    }

Вы можете клонировать Официальный образец проекта комплекта ML, чтобы увидеть полную реализацию кода.

Другие вопросы по теме