2016-01-14 2 views
0

Я написал пример приложения для Android. Я получаю Tesseract (native): не удалось инициализировать Tesseract API с языком = eng! ' ошибка.Не удалось инициализировать tess-two (не удалось инициализировать ошибку API Tesseract)

Я действительно включал compile 'com.rmtheis:tess-two:5.4.0' в Gradle файле Также копируются все «файлы данных» 3.04.00 версию каталога 'tessdata. Я отлаживал Java-код «init», кажется, что он работает нормально, он не работает внутри «nativeside».

Любые предложения, что может быть неправильным с моим кодом. Вот несколько строк кода, я использую для инициализации

final String lang = "eng"; 
TessBaseAPI baseApi = new TessBaseAPI(); 
File externalDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS); 
String externalDirPath = externalDir.getAbsolutePath() + "/"; 
flag = baseApi.init(externalDirPath, lang); 
+0

Да, я получил последние несколько раз (даже несколько минут назад), это не сработало. Есть ли способ включить журналы отладки с родной стороны. – mahabudhi

+0

Кроме того, я получил последний код, созданный в формате aar, и начал использовать его, считая, что существует несоответствие между файлами кода и данных. Это тоже не сработало. Я пытаюсь изучить собственный код. Есть ли способ увидеть собственные журналы на логарифме? Теперь у меня есть возможность вставить свой собственный код, так как я могу построить файл aar. – mahabudhi

+0

Спасибо, это проблема, связанная с устройством. Пробовал это на другой планшете, он отлично работает для меня, тот же код. – mahabudhi

ответ

1

Проблема была не с Тесс-два, это было с моим приложением, я разворачивал ее на Зефир, это требует другой способ, чтобы получить разрешение WRITE_EXTERNAL_STORAGE. Я не знал об этом, теперь я исправил эту проблему, и мое приложение работает нормально.

+0

Не могли бы вы подробнее рассказать о том, что такое исправление. Я получаю то же самое, что и адрес, нацеленный на Marshmallow. – Mario

+0

С М это не только достаточно положить '<использует-разрешение андроида: имя =«android.permission.WRITE_EXTERNAL_STORAGE»/>' в манифесте, но вы должны запросить разрешение в явной форме, что-то вроде 'ActivityCompat. requestPermissions (активность, '' новый String [] {Manifest.permission.WRITE_EXTERNAL_STORAGE, '' Manifest.permission.CAMERA}, WRITE_EXTERNAL_STORAGE_PERMISSION); ' Проверить это для получения дополнительной информации http://developer.android.com /training/permissions/requesting.html – mahabudhi

+0

@mahabudhi У меня такая же проблема в Marshmallow, даже с разрешением req У вас есть список. Однако на Lollipop все работает отлично. Мое приложение явно запрашивает у пользователя доступ к камере при его первой установке, но никогда не запрашивает разрешения на чтение/запись. Приложение может делать снимок с камеры или галереи, но когда она обрезается для распознавания текста, приложение выходит из строя, потому что изображение невозможно открыть. – nocdib