Это мой первый опыт создания чего-то с помощью phonegap, angularjs, ionic, yoman и grunt. Приложение отлично работает для Интернета, но я пытаюсь создать его через телефонную связь. Шаги, которые я предпринимаю, следующие:
$sudo grunt build
Это строит все нормально, и ответ:
Done, without errors.
Execution Time (2014-09-14 19:07:13 UTC)
concurrent:dist 3m 31.6s _________________________________ 35%
autoprefixer:dist 2m 9.1s ____________________ 22%
concat:generated 2m 26.4s _______________________ 24%
ngmin:dist 1m 24.3s _____________ 14%
cdnify:dist 14s ___ 2%
uglify:generated 8.8s __ 1%
Total 10m 0.4s
Далее я запускаю:
$ phonegap remote build android
[phonegap] compressing the app...
[phonegap] uploading the app...
[phonegap] building the app...
[phonegap] Android build complete
Оттуда я загружаю .apk и открываю его на своем телефоне Android.
Проблема в том, что phonegap где-то не инициализирован, а window.phonegap
не определено.
Вот код для отслеживания window.phonegap
в app.js:
var PhoneGapInit = function () {
this.boot = function () {
angular.bootstrap(document, ['mobileAppApp']);
};
if (window.phonegap !== undefined) {
document.addEventListener('deviceready', function() {
this.boot();
});
} else {
alert('PhoneGap not found, booting Angular manually');
this.boot();
}
};
angular.element(document).ready(function() {
new PhoneGapInit();
});
Насколько я знаю, в index.html
я инициализировал его с помощью
<!-- build:js(.) scripts/vendor.js -->
<script src="phonegap.js"></script>
Какую важную информацию я упускаю? Я могу включить соответствующие файлы config.xml и Gruntfile.js, если их попросят. Заранее спасибо!