これはiOSに関連する問題です。PhoneGap 0.9.6 (Blackberry) + Sencha Touch 1.1.0: deviceready does not fireです。電話帳にsencha touch 2を統合すると、「deviceready」イベントを起動できません。
だから、私はその出来事を起こすことができません。最新のコードバ(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);
},
旧バージョン(PG 1.2、ST 1.1)は正常に統合されました。以前のPhoneGapバージョンでコードが動作しましたか、これは新しい問題ですか? Sencha Touchイベント(別の場所からイベントを発します)からPhoneGapイベントリスナを個別に(アラートを表示するだけで)テストするとどうなりますか? – Will
こんにちは、分かりません。リスナーを別に起動するにはどうしたらいいですか?あなたは例を挙げることができますか?私の仕事場ST2 PG 1.7.0 – Disco
問題の範囲を絞り込むことができるのだろうかと思います。あなたがしている場合は、警告が表示されます: 'document.addEventListener(" deviceready "、function(){alert( 'deviceready');}); ' – Will