Ioni c генерирует собственный плагин iBeacon. Невозможно прочитать свойство locationManager из undefined. - PullRequest
0 голосов
/ 07 мая 2020

Я пытаюсь интегрировать плагин iBeacon в свое приложение Ioni c 5, но он вообще не работает.

Когда я пытаюсь позвонить

this.delegate = this.ibeacon.Delegate();

, тогда на устройстве я все время получаю следующую ошибку.

vendor-es2015.js:40772 ERROR Error: Uncaught (in promise): TypeError: Cannot read property 'locationManager' of undefined
TypeError: Cannot read property 'locationManager' of undefined

это связано со следующим кодом в плагине:

var delegate = new _ionic_native_core__WEBPACK_IMPORTED_MODULE_2__["cordova"].plugins.locationManager.Delegate();

Я добавил IBeaconprovider в основной модуль, а также использую импорт из '@ ioni c -native / ibeacon / ngx'

My версии пакета:

"@ionic/core":  "5.1.0"
"@ionic-native/core": "5.25.0"
"@ionic-native/ibeacon": "5.25.0"
"@angular/common": "8.2.14"

Не уверен, что я делаю что-то не так или в плагине есть ошибка.

Ссылка на исходный вопрос на Ioni c Форум

Заранее спасибо за помощь!

Ответы [ 3 ]

2 голосов
/ 08 августа 2020

Для тех, кто все еще сталкивается с той же проблемой. Это решение:

  1. Установите плагины,
ionic cordova plugin add cordova-plugin-ibeacon
npm install @ionic-native/ibeacon
Измените следующие три файла в пути node_modules/@ionic-native/ibeacon с файлами в репозитории ionic5ibeacon
  • index. js
  • ngx /index.js
  • ivy_ngcc / ngx / index. js

Решение было протестировано на устройствах iOS и Android. см.

Спасибо IT-Dan

1 голос
/ 03 июня 2020

Для обхода этой проблемы я сделал следующее:
1. - Удалена текущая android платформа (ioni c cordova platform rm android)
2. - Установлена ​​другая версия cordova android ( ioni c cordova paltform add android@^8.1.0-nightly.2019.9.10.42c0cba7)
3.- Перестроенный проект (ioni c cordova build android)
4.- Запустить проект

Надеюсь, это сработает и для вас

0 голосов
/ 03 июня 2020

Проблема в том, что версия Android в Кордове отличается. Вы должны изменить его.

Текущая версия - android@^8.1.0-nightly.2019.9.10.42c0cba7.

И команда Ioni c для его изменения:

ionic cordova platform add android@^8.1.0-nightly.2019.9.10.42c0cba7
...