Вопрос:

Не могу использовать плагин Cordova Vibre с ионным с IOS

cordova plugins ionic-framework phonegap-plugins vibration

443 просмотра

1 ответ

1207 Репутация автора

Тестируя в Safari, я получаю эту ошибку: undefined не является объектом (оценка 'navigator.notification.vibrate')

Ошибка в симуляторе или устройстве: ПРЕДУПРЕЖДЕНИЕ: 998: сбой при настройке звука, err = -50

Я добавил плагин в свой проект, и попытался добавить его снова. Я получаю сообщение "уже добавлено .."

Спасибо Уэйн

Автор: Wayne F. Kaskie Источник Размещён: 22.08.2016 08:50

Ответы (1)


0 плюса

421 Репутация автора

Попробуйте использовать Ionic-Native, чтобы обернуть плагин Cordova Vibration. Вы все еще хотите удалить его и повторно добавить:

ionic plugin remove cordova-plugin-vibration --save
ionic plugin add cordova-plugin-vibration --save
bower install ionic-native --save
ionic prepare ios

Как только вы это сделаете, вам нужно будет сделать следующее:

  1. Ссылка на ionic.native.jsскрипт из вашей папки Bower.
  2. Убедитесь, что ваш модуль опирается на 'ionic.native'.
  3. Введите $cordovaVibrationсервис в ваш контроллер.
  4. Звоните $cordovaVibration.vibrate(100)с вашего контроллера.

Вы упомянули, что тестируете в Safari. Вы имеете в виду, что вы используете, ionic serveи вы видите эти ошибки? Или вы используете Safari для отладки на реальном устройстве? Если вы просто в браузере, я не верю, что это когда-нибудь сработает. Когда я пробую это в Safari, я получаю эту ошибку, когда пытаюсь вызвать функцию вибрации.

Error: undefined is not an object (evaluating 'b.get(window,e.pluginRef)[n].apply')
r@http://localhost:3000/bower_components/ionic-native/ionic.native.min.js:4:18863
http://localhost:3000/bower_components/ionic-native/ionic.native.min.js:4:22713
value@http://localhost:3000/bower_components/ionic-native/ionic.native.min.js:4:21241
vibrate@http://localhost:3000/main/debug/debug-ctrl.js:55:17
fn
http://localhost:3000/bower_components/ionic/js/ionic-angular.js:12249:21
$eval@http://localhost:3000/bower_components/angular/angular.js:17682:28
$apply@http://localhost:3000/bower_components/angular/angular.js:17782:30
http://localhost:3000/bower_components/ionic/js/ionic-angular.js:12248:19
defaultHandlerWrapper@http://localhost:3000/bower_components/angular/angular.js:3497:15
eventHandler@http://localhost:3000/bower_components/angular/angular.js:3485:23
dispatchEvent@[native code]
triggerMouseEvent@http://localhost:3000/bower_components/ionic/js/ionic.js:2946:20
tapClick@http://localhost:3000/bower_components/ionic/js/ionic.js:2935:20
tapMouseUp@http://localhost:3000/bower_components/ionic/js/ionic.js:3011:13

И в Safari, и в Chrome Ionic-Native предоставляет очень удобное предупреждающее сообщение:

Native: tried accessing the e plugin but Cordova is not available. Make sure to include cordova.js or run in a device/simulator
Автор: MikeC Размещён: 23.08.2016 07:41
Вопросы из категории :
32x32