我使用sencha touch 2.4框架和sencha cmd创建了一个cordova应用程序,它适用于iOS和大多数Android设备。 问题出现在一些旧设备上,例如Galaxy Ace和GT-B5510。
它卡在蓝色加载屏幕上并抛出此错误:
09-12 23:43:41.386: E/Web Console(373): TypeError: Result of expression 'b.onTargetTouchMove.bind' [undefined] is not a function. at file:///android_asset/www/app.js:1
是否有解决此问题的方法,或者我只需排除这些设备?
答案 0 :(得分:1)
这似乎与以下帖子中描述和回答的问题相同:
Sencha touch 2.4 appLoadingIndicator stack on android 2.3
答案 1 :(得分:0)
旧的Android设备不支持ECMAScript 5:
请替换此
if (Ext.feature.has.Touch) {
// bind handlers that are only invoked when the browser has touchevents
me.onTargetTouchMove = me.onTargetTouchMove.bind(me);
me.onTargetTouchEnd = me.onTargetTouchEnd.bind(me);
} 与
if (Ext.feature.has.Touch) {
// bind handlers that are only invoked when the browser has touchevents
me.onTargetTouchMove = Ext.Function.bind(me.onTargetTouchMove, me);
me.onTargetTouchEnd = Ext.Function.bind(me.onTargetTouchEnd, me);
}