首页 > 代码库 > phonegap开发app中踩过的那些坑

phonegap开发app中踩过的那些坑

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

 

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上相关讨论

 

 

待续…