phonegap开发app中踩过的那些坑

本文档总结了使用PhoneGap开发过程中常见的几个问题及其解决方案,包括无法触发deviceready事件、拍照回调慢、illegalaccessexception异常与iScroll事件重复执行等问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

把遇到的问题列出来,如果有解决方案的,偶也会写下来,如果大家有更好解决方法的,欢迎留言噢

 

phonegap 2.9无法触发deviceready事件

亲们可以看下控制台有木有报错,如果有提示cordova_plugins.json 404 (Not Found) ,就在www目录下新建个空文件,命名为cordova_plugins.json就好了,cordova初始化的时候会请求这个文件,但po主还没发现这个文件有啥用,但是没有这个文件的话,cordova初始化失败,自然不会触发deviceready事件。

stackoverflow上关于这个问题有讨论,http://stackoverflow.com/questions/16095757/what-is-the-cordova-plugins-json-file-for-cordova-is-requesting-it-at-initializ

 

phonegap拍照回调慢

刚遇到这个问题的时候,po主很崩溃,在三星S4上都这么慢,那没戏了啊,经过调试,发现慢是图片大小的问题

代码如下,标红的是重点,将拍出来的照片压缩到640宽,速度就飞一般了。

navigator.camera.getPicture(function(imageData){
app.startLoading(‘正在上传图片’);

app.uploadImg(imageData,function(data){
console.log(data)

}, function(message){
console.log(‘拍照失败: ‘ + message);
}, {
quality: 75,
destinationType: Camera.DestinationType.DATA_URL,
saveToPhotoAlbum:true,
targetWidth:640,
targetHeight:1138,
correctOrientation:true

});

 

illegal access exception with localstorage

起初以为是android某些版本对localstorage的支持问题,后来发现是getItem()得到的内容是null的时候,用JSON.parse就会抛出这个异常,http://stackoverflow.com/questions/12846485/illegal-access-exception-with-localstorage-on-android-gingerbread

所以在getItem之后要加一层判断哦

 

 

iScroll事件重复执行的问题

这个po主在研究中,暂时用了个变量来控制事件只执行一次,但治标不治本,github上相关讨论

 

 

待续…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

微个日光日

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值