У меня есть проблема, с которой я сталкивался в Android 2.2 и 2.3.3 avd/phone, но не при использовании образа Intel Atom для avd. Я использую phonegap 2.3.0 и jqm 1.3.0. Мне не хватает события pageshow на странице, и мое приложение выходит из строя, что означает, что навигация больше не работает:
03-19 16:09:13.045: I/CordovaLog(2733): Found log level DEBUG
03-19 16:09:13.045: I/CordovaLog(2733): Changing log level to DEBUG(3)
03-19 16:09:13.055: I/CordovaLog(2733): Found preference for useBrowserHistory=true
03-19 16:09:13.055: D/CordovaLog(2733): Found preference for useBrowserHistory=true
03-19 16:09:13.065: I/CordovaLog(2733): Found preference for exit-on-suspend=false
03-19 16:09:13.065: D/CordovaLog(2733): Found preference for exit-on-suspend=false
03-19 16:09:18.395: D/CordovaLog(2733): mobile init
03-19 16:09:20.785: D/CordovaLog(2733): init pgSplash
03-19 16:09:20.995: D/CordovaLog(2733): page before show: pgSplash
03-19 16:09:21.285: D/CordovaLog(2733): pageshow : pgSplash
03-19 16:09:21.355: D/CordovaLog(2733): init
03-19 16:09:22.035: D/CordovaLog(2733): Falling back on PROMPT mode since _cordovaNative is missing.
03-19 16:09:22.285: D/CordovaLog(2733): device ready
03-19 16:09:22.295: D/CordovaLog(2733): check version
03-19 16:09:23.795: D/CordovaLog(2733): init pgLogin
03-19 16:09:24.045: D/CordovaLog(2733): page before show: pgLogin
Отсутствует событие pageshow для pgLogin, и навигация не работает. Я связываюсь с:
$('[data-role=page]').live('pageshow', function (event, ui) {
lastPage = $.mobile.activePage.attr('id');
console.log('pageshow : ' + lastPage);
...
});
Как вы можете видеть в журнале, я получаю событие мобильной инициализации от jqm, я получаю событие готовности устройства от phonegap, а 1-я страница: pgSplash запускает все события: init, page before show, pageshow. Но после этого он ломается. На устройстве 4.1 emulator/galaxy tab работает без проблем.