2012-05-03 35 views
1

這似乎是與iOS相關的PhoneGap 0.9.6 (Blackberry) + Sencha Touch 1.1.0: deviceready does not fire之外的另一個問題。將sencha touch 2集成到phonegap中,無法獲取'deviceready'事件觸發

所以,我不能讓那個事件發生;使用最新的cordova(phonegap)1.6.1。

有沒有人成功整合了這些ST2和PhoneGap?

這裏是我的app.json:

"js": [ 
    { 
     "path": "resources/js/cordova-1.6.1.js", 
     "update": "delta" 
    }, 
    { 
     "path": "sdk/sencha-touch.js" 
    }, 
    { 
     "path": "app.js", 
     "update": "delta" 
    }, 
], 

我app.js:

launch: function() { 
    // Destroy the #appLoadingIndicator element 
    Ext.fly('appLoadingIndicator').destroy(); 
    var mainPanel = Ext.Viewport.add({ 
     xclass: 'Sencha.view.Main' 
    }); 

    // load phonegap stuff 
    document.addEventListener("deviceready", function() { 
     mainPanel.fireEvent("deviceready"); 
    } , true); 
}, 

我Main.js控制器:

Ext.define('Sencha.controller.Main', { 
    extend: 'Ext.app.Controller', 

config: { 
    refs: { 
     mainPanel: 'mainpanel', 
    }, 
    control: { 
     mainpanel: { 
      deviceready: 'onDeviceReady' 
     }, 
    }, 
}, 
onDeviceReady: function() { 
    var states = {}; 
    states[Connection.UNKNOWN] = 'Unknown connection'; 
    states[Connection.ETHERNET] = 'Ethernet connection'; 
    states[Connection.WIFI]  = 'WiFi connection'; 
    states[Connection.CELL_2G] = 'Cell 2G connection'; 
    states[Connection.CELL_3G] = 'Cell 3G connection'; 
    states[Connection.CELL_4G] = 'Cell 4G connection'; 
    states[Connection.NONE]  = 'No network connection'; 
    Ext.Msg.alert('Connection type', states[networkState], Ext.emptyFn); 
    navigator.notification.beep(2); 
}, 
+0

我已經成功集成了舊版本(PG 1.2,ST 1.1)。您的代碼是否在以前的PhoneGap版本中工作,或者這是一個新問題?如果您從Sencha Touch事件中分別測試PhoneGap事件偵聽器(僅顯示警報)(從其他地方觸發事件),會發生什麼情況? – Will

+0

嗨,不知道明白;我怎樣才能讓聽衆分開;你能給個例子嗎 ?我的工作環境。是ST2 PG 1.7.0 – Disco

+1

我想知道你是否可以縮小問題的範圍。如果你這樣做,會顯示一個警告:'document.addEventListener(「deviceready」,function(){alert('deviceready');},true);' – Will

回答

4

煎茶觸摸2將聽取該事件並調用你的onReady/launch方法 - 因此,如果你嘗試在啓動方法中聽它們,它已經被解僱了。

只需將您的邏輯放入應用程序的啓動方法中。

+0

它工作;雖然我不明白爲什麼它不能在外面跑...... – Disco

相關問題