Сначала я хочу сказать, что все работает в эмуляторах, но когда я его создаю и тестирую на устройстве, это не так.Событие Intel XDK/Cordova onDeviceReady не срабатывает
Я хотел установить свою ориентацию на альбомную, так что я следовал примеры с:
document.addEventListener("intel.xdk.device.ready", onDeviceReady, false);
function onDeviceReady(){
intel.xdk.device.setRotateOrientation('landscape');
intel.xdk.device.hideSplashScreen();
}
Когда я использую его в режиме «Тест», раздвинуть файлы на сервере, а затем загрузить приложение из облако это прекрасно работает.
Но когда я создаю приложение, используя Build-> Clicking Build для Android из меню «Cordova 3.X Hybrid Mobile App Platforms», загрузите его и установите, он не работает.
Вы можете сказать, что я мог бы создать приложение из меню «Legacy Hybrid Mobile App Platforms», а затем в меню «Assets» выбрать пейзаж. Да, это работает, но я хочу также использовать hideStatusBar()
, который также требует, чтобы произошло событие onDeviceReady
.
Я тестирую его на Galaxy S2 с Android 4.1.2 и LG G2 с Android 4.4.2.
Кроме того, я начал новый проект с шаблоном и есть эти строки:
// Listen to deviceready event which is fired when Cordova plugins are ready
document.addEventListener('deviceready', function() {
// Call splashscreen API to hide the splash.
navigator.splashscreen.hide();
});
Но они также не работают.
Похоже, что событие deviceReady
не срабатывает. Любая идея, что может быть проблемой или предложениями для обходных решений? Я просто хочу, чтобы приложение было в ландшафте, а строка состояния была скрыта. Мне больше ничего не нужно от XDK.
PS: Если потребуется, могу опубликовать index.html
и другой код.
Вы уверены, что плагин устройства включен? Перейдите в панель проектов и посмотрите на плагины cordova. –
Да, он включен, но я решил использовать Cocoonjs для закрытия приложения. Он работает отлично. Я просто не мог найти никакого логического решения. – chnging