Я создаю приложение Angular 6 для всех платформ, которое будет упаковано в Cordova 8.1.2 К сожалению, я не могу вызвать событие deviceready .
У меня есть два отдельных проекта, один для Angular и один для Cordova, и я могу собрать для сборки проекта Angular и создать Android-apk с помощью следующей команды:
ng build --prod --base-href . --output-path ../Cordova/CordovaMobileApp/www/ & cd ../Cordova/CordovaMobileApp & cordova run android & cd ../../NxAngularMVI
Теперь мне нужно использовать плагины Cordova и для этого мне нужно обнаружить событие deviceready .
в моей голове index.html я уже включил:
<script type=”text/javascript” src=”cordova.js”></script>
и в моем файле main.ts я пытаюсь дождаться события, которое произойдет, чтобы загрузить мое приложение.
const onDeviceReady = () => {
console.log('Bootstrap ON!');
platformBrowserDynamic().bootstrapModule(AppModule).catch(err =>
console.log(err));
};
document.addEventListener('deviceready', onDeviceReady, false);
Приложение никогда не инициализируется, потому что событие deviceready никогда не запускается. Я пробовал несколько вариантов, которые я обнаружил при переполнении стека этого метода начальной загрузки, но безрезультатно. Я попытался переустановить каждую часть Cordova от платформы до платформ для плагинов, но ничего не помогло. Я тестировал его на Galaxy S9 и Motorola G5.
Поскольку эта функциональность, предоставляемая Cordova API, является обязательной для моего проекта, мне нужна ваша помощь, ребята. Спасибо!