Прочитав его учебники, я все еще чувствую смущение. Нужно ли включать cordova.js и инициализировать app.initialize(); на каждой отдельной странице? Или, пока загружен index.html, мне не нужно будет включать cordova.js и запускать его на любые другие страницы?
Поддерживает ли Cordova/PhoneGap только одноразовые мобильные приложения
Ответ 1
Это зависит! Если вы используете Кордову в компаньоне с jQM или любыми другими ajax-like фреймворками, нет необходимости загружать cordova.js на каждую страницу. Нужно только загрузить его в ваш index.html, и он останется там доступным, даже если вы измените страницу в другом html.
Причина в том, что в jQM вещи загружаются в ajax как мода, и они остаются в DOM, поэтому библиотека кордонов доступна через жизнь DOM. Если вы включите cordova.js на каждой странице, у вас будет несколько заявлений, и это может привести к проблемам. Помните об этом.
Я работаю в приложении, используя одностраничные приложения, каждую страницу на независимом HTML, что было полезно для наших целей для удобства и позволяет другим людям работать на других страницах, не впутывая всех в один файл. Мы просто загружаем кордову и другие общие библиотеки в index.html, и все работает нормально. Для конкретных страниц, требующих специального кода, я загружаю необходимые скрипты для каждой страницы, поэтому код библиотеки не остается в DOM, когда я меняю другие страницы, чтобы DOM был как можно более легким и чистым.
Если вы хотите включить кордову на каждую страницу, просто знайте, что сначала проверьте, не загружена ли библиотека. Что я рекомендую, чтобы проверить, чтобы событие deviceready на всех страницах просто оставалось в безопасности.
Решение о разработке отдельных приложений или многостраничных приложений зависит от ваших потребностей и ситуации.
Ответ 2
В мобильных устройствах безумно загружать все каждый раз, особенно если они не подключены к Wi-Fi.
Взгляните на это, это очень простой способ сделать модульное приложение одним только html: https://github.com/charnekin/api
Ответ 3
Да. Вы должны включить cordova.js на каждую страницу. Хотя вам не нужно подписываться на события, связанные с Cordova, на каждой странице, если вам не нужен доступ к специфичным для устройства функциям на этой странице, и вы можете использовать обычные HTML-страницы с комбинациями JS и CSS. Хотя это возможно, это не рекомендуется делать в приложениях Кордовы, так как каждый раз, когда вы перейдете на новую страницу, пользователь это заметит. "Лучшая практика" в Кордове - использовать одностраничное приложение и не использовать несколько страниц для разных экранов.
Вы можете посмотреть статью по ссылке http://floatlearning.com/2011/03/developing-better-phonegap-apps/ для другого набора хороших советов, которые учитываются при начале работы с Cordova