Плагины ngCordova - проблема с корректным включением cordova.js

0

Я пробовал все в течение последних двух дней, чтобы решить эту проблему. Я здоров и по-настоящему тупой. Возможно, кто-то с большим знанием, чем я могу пролить свет на проблему:

В принципе, я создаю приложение в AngularJS с целью создания приложений Android и iOS от него с помощью Cordova. Я должен указать, что я использую cordova-cli для Linux и ngCordova (обертка вокруг плагинов). Я НЕ использую Ionic Framework.

Мое приложение отлично работает в Chrome. Я отлично выполнил руководство по установке ngCordova: http://ngcordova.com/docs/install/

Я использовал беседу для установки. Затем включил следующее в index.html моего проекта веб-приложения (а не проект Кордовы):

<script src="lib/ngCordova/dist/ng-cordova.js"></script>

Это не сработало. Я подумал, может быть, потому, что ng-cordova.js зашел в мой каталог компонентов bower. Поэтому я изменил этот тег скрипта на:

bower_components/ngCordova/dist/ng-cordova.js

Когда я перехожу в каталог проекта cordova и настраиваю платформы, плагины и т.д.... и запускаю:

cordova build android

с последующим

cordova run android

Приложение работает на моем устройстве (Nexus 5). Я использую chrome://проверяю, что происходит, когда я нажимаю кнопку, которая должна использовать плагин для композитора электронной почты: я получаю ошибку, не определенную в кордове.

Я вошел в контроллер и поместил это в

console.log($cordovaEmailComposer);

Я могу проверить это в chrome://insepct, и у него есть все правильные функции и т.д., Так что ng-cordova.js работает нормально (вот где фабрика для плагина).

Я на 99% уверен, что проблема в том, что где-то вдоль линии cordova.js теряется. Когда я иду в проект cordova в ProjectName/www/index.html, тег для cordova.js прокомментирован.

То же самое в файле platform/android/assets/www/index.html.

Я проследил его, и то же самое верно в файле WebAppProject/dist/index.html. Он прокомментировал это. Поэтому кажется, что когда я запускаю grunt, сборка cordova.js удаляется. Я подумал, может быть, потому, что cordova.js не был в WebAppProject, поэтому я привел его в корневой каталог (то же самое место, что и index.html), и это все равно произошло.

Может ли кто-нибудь объяснить, как правильно заставить это работать? Я полностью в недоумении. Я пробовал миллион различных способов включения cordova.js. Я даже вручную раскомментировал его в файле cordovaproject/www/index.html. Приложение создается, но падает при открытии (белый экран затем умирает), предлагая отсутствующий скрипт (несмотря на то, что cordova.js тоже находится в этом каталоге...).

Это процесс сборки? Или я полностью настраиваю проект ngCordova неправильно, не понимая... Я бы опубликовал код, но я на 99% уверен, что проблема связана с cordova.js или тем, как проект строится на сборке grunt или создании cordova.

Любая помощь приветствуется. :)

Cheers, D

Теги:
cordova

1 ответ

0

Обязательно включите ngCordova до cordova.js и после angular.js.

<script src="/path/to/angular.js"></script>
<script src="/path/to/ng-cordova.js"></script>
<script src="/path/to/cordova.js"></script>
  • 0
    Ага. 100%, что они в таком порядке.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню