I got it working with the following method :
On sencha-touch-all-debug.js, find all object definition of Ext.device.* and remove it from the file.
Load the Ext.device.* separately, using dynamic loading scheme, as normal.
To create sencha-touch-all.js, you'll need to compress the sencha-touch-all-debug.js manually.
It should work without problems.
There are couple other typos in the file, "butons" instead of "buttons" and from placement of "" in one of the files. Otherwise, it works as advertised.
Originally Posted by bfg100k
Wow, so does this mean that ST2.1 fundamentally breaks easy integration with PhoneGap (Build)?
Two questions for you:
- I found the 'butons' typo, but what line exactly are you referring to regarding the '' bug?
- Instead of hacking apart the sencha-touch-all.js, wouldn't it be possible to simply wait for 'ondeviceready' in index.html and then include all ST-related .js files afterwards?
Regarding question 2, I'm not sure exactly how this could be written.. any ideas?
One more question..
One more question: for your approach, did you cut and paste all Ext.device.* related code into a separate .js file?
What exactly do you mean by 'dynamic loading scheme'? You added it to 'requires' or something?
I'm still hoping that a solution is possible using the 'ondeviceready' phonegap event to wait and load normal sencha-touch-all.js...
I'll upload a working copy of the sencha-touch-all-debug.js later in the evening.
I have it
I was already able to make a working sencha-touch-all.js, thanks :) I removed all Ext.device.* references, as well as fixing the 'buttons' typo. Now PhoneGap Build no longer creates a broken app.
ST guys: ST2.1 has a critical incompatibility with normal PhoneGap workflow, it seems. So many people are having the problem.
erchan_2000: please explain what you mean by the '' bug you found..
line 13 : The correct syntax is -
config.callback.apply(config.scope, (config.buttons) ? [config.buttons[index - 1].toLowerCase()] : );
Take are careful inspection of the placement of '' around the 'toLowerCase()'.
If you don't fix this problem, you won't be able to properly see any native popups.
2.1 really does have some problems.. :(
Is there no way to simply wait for PhoneGap to finish loading until we load the ST/app .js files? That is really the solution I would like to see most...
It seems that Sencha doesn´t run even the most basic tests ST<>PhoneGap before publishing a new release?!
It would appear so. Removing Ext.device.* delarations from sencha-touch-all.js fixed absolutely all problems for me. I urge everyone to try it out, or perhaps for someone to work on a solution that delays loading until 'deviceready' event is detected by PhoneGap..