Я пытаюсь протестировать плагин для cordova на распознавании OCR, предложенный компанией Abbyy. Поскольку я читаю, это бесплатно, и они не предлагают поддержку, вы можете поддержать себя только в сообществе вашего форума (уже говорите с поддержкой по почте).
Ну, причина моего поста в следующем ...
Я выполнил шаги, написанные здесь: https://github.com/abbyysdk/RTR-SDK.Cordova
И после тяжелого боя мне удалось запустить приложение на Android без каких-либо ошибок при выполнении команды cordova run android. В моем файле index.js я добавил следующее в методе onDeviceReady:
var app = {
// Application Constructor
initialize: function () {
document.addEventListener ('deviceready', this.onDeviceReady.bind (this), false);
},
// deviceready Event Handler
//
// Bind any cordova events here. Common events are:
// 'pause', 'resume', etc.
onDeviceReady: function () {
this.receivedEvent ('deviceready');
AbbyyRtrSdk.startTextCapture (function (c) {
console.log ('callback:', c);
}, {
licenseFileName: 'www / rtr_assets / AbbyyRtrSdk.license'
});
},
// Update DOM on a Received Event
receivedEvent: function (id) {
var parentElement = document.getElementById (id);
var listeningElement = parentElement.querySelector ('. listening');
var receivedElement = parentElement.querySelector ('. received');
listeningElement.setAttribute ('style', 'display: none;');
receivedElement.setAttribute ('style', 'display: block;');
console.log ('Received Event:' + id);
}
};
app.initialize ();
До сих пор все правильно. Позже я не понял, почему вывод строки console.log ('callback:', c) возвратил ошибку: «Неопределенная ошибка при загрузке движка. Подробности смотрите в logcat». Я был глуп, потому что не знал, где взять эту проблему, поэтому решил изменить файл "cordova-plugin-abbyy-rtr-sdk \ src \ android \ java \ com \ abbyy \ mobile \ rtr \ cordova \ RtrPlugin. java ", просто в строке 134, и я изменил его на: onError (e.getMessage ()), чтобы получить реальную ошибку плагина, и я обнаружил следующее сообщение:« Попытка вызвать виртуальный метод »void com.abbyy.mobile. rtr.cordova.RtrManager.initWithLicense () 'для ссылки на нулевой объект', но я не знаю, как это исправить ... Если кто-то может дать мне некоторые рекомендации, я был бы признателен. Этот плагин должен работать нормально, или я думаю, я не думаю, что это хорошая идея, чтобы играть код как сумасшедший без небольшой помощи ...
Я использую:
- Java JDK 1.8.0_172
- Android 7.0
- Кордова 8.0.0
- Реальное физическое устройство (Huawei P10)
Если вам нужны дополнительные спецификации, сообщите мне, и я проинформирую вас о каждой части среды, в которой я пытаюсь запустить приложение.