我试图用Tesseract
在我的离线模式Ionic 4
应用程序。 为了做到这一点我已经凭本人上有什么解释代码这个例子 ,虽然它与做Ionic 3
,什么正方体GitHub的解释关于离线模式 。
首先,我已经把Tesseract
文件中src\assets\lib
目录如下( tesseract-
为前缀的文件已经被我添加的):
接下来,我创建了一个基本创建如上面提到的链接显示一个正方体离线模式实例的服务:
const path = this.webview.convertFileSrc(this.file.applicationDirectory + 'www/assets/lib/');
this.tesseract = await Tesseract.create({
langPath: path + 'tesseract-',
corePath: path + 'tesseract-index.js',
workerPath: path + 'tesseract-worker.js',
});
在代码的一些注意事项:
-
this.file
是一个File
,从'@ionic-native/file/ngx'
。 - 要将呼叫
convertFileSrc
是为了避免unable to load resource
试图直接加载JavaScript文件,当您收到错误。 - 如果我登录与
this.file.listDir
内容this.file.applicationDirectory + 'www/assets/lib/'
我可以看到Tesseract
文件。
现在,当我部署这一个Android emulator (Pixel 2 API 28)
并尝试调用其中这个代码是我获得以下错误,按照在Chrome调试器的功能:
FWIW,这是我的环境:
Ionic:
ionic (Ionic CLI) : 4.12.0 (C:\Users\guillem.vicens\AppData\Roaming\nvm\v10.15.3\node_modules\ionic)
Ionic Framework : @ionic/angular 4.1.2
@angular-devkit/build-angular : 0.13.6
@angular-devkit/schematics : 7.2.4
@angular/cli : 7.3.6
@ionic/angular-toolkit : 1.4.1
Cordova:
cordova (Cordova CLI) : not installed
Cordova Platforms : android 8.0.0
Cordova Plugins : cordova-plugin-ionic-keyboard 2.1.3, cordova-plugin-ionic-webview 3.1.2, (and 6 other plugins)
System:
Android SDK Tools : 26.1.1 (C:\Users\myUser\AppData\Local\Android\Sdk)
NodeJS : v10.15.3 (C:\Program Files\nodejs\node.exe)
npm : 6.4.1
OS : Windows 10
我在想什么? 什么是访问的正确方法是assets
的文件夹?