ionic 开发中的一些错误

1.打包问题

不要轻易删除package-lock.json文件,指定某个平台的版本。我android指定6.3.0 ,ios4.4.0(4.5.0会和cordova-plugin-console重复,使用4.5.0需要删除cordova-plugin-console插件)。

2.npm install的问题

  1. node-sass 安装的问题直接自己百度,百度再解决不了就重新git clone新建个项目,再解决不了,我也不知道(linux系统大概率会出现安装失败,好像安装什么gcc)
  2. 存在cordova-plugin-video-capture-plus这个插件的时候,npm install会报错,先在package.json删掉和这个有关的安装包名字

3.cordova-plugin-photo-library的错误

安卓暂时没有发现错误,ios在xcode里面打包的时候会报错,网上的解决方案是在build settings里面的swift language version里面更改版本,改完了确实不报错了,但是调用方法的时候会出现未定义的问题。相关解决是找到报错的信息,按照他的提示来修改。我当时是只改了一个函数名。

4. 使用html2canvas保存图片

这个和上面是结合在一起的,主要是传一个dom给canvas,当时保存图片的时候,有时候成功有时候失败。后来猜估计是dom的问题,估计是复用了,当时因为多个地方需要保存功能,他们的id名字相同(页面不相同),可能使用第二个的时候取了第一个,但是第一个当时已经隐藏了,所以一直保存失败,html2canvas操作的元素宽高都是0,dataurl不能parse,所以一直保存失败

5. cordova-plugin-camera-preview

需要自定义相机外层部分区域,选择了这个,但是这个拍照很糊,有部分手机根本不能正常显示内容
,查到的解决方案是是修改CameraPreviewPictureOptionswidth,height,我后来改的是设备支持最大的值,但是没有用,还是很糊,这个不知道怎么解决。知道的麻烦告诉我一声。(PS:如果不需要拍完照后把照片显示出来,只需要背地里默默的处理,可以借用截屏,截的图非常的清晰,完美)

6. cordova-plugin-file-opener2

这个问题是针对Android版本的,下载完apk后需要打开安装,android低于8.0版本的能顺利打开,但是高于这个版本的,不能打开,也不会报错,而是走正常流程,还显示OK。解决方法在作者github上,readme里面有。

7. ios部分元素需要点击两次才会有反应

在ionic官方文档首页上有一个FAQ,点进去有一个click delays按照我的翻译是点击延迟,但是这个我觉得根本就不是延迟,就是没有反应,反正按照这个来修改,可以解决这个问题。

8. ios时间问题

这个应该不属于ionic,只要是苹果的好像都有问题,苹果不能识别-时间的字符串,会异常

9. app正常几天后,再打开app会闪退(强行退出)

xcode签名处有一个provisioning profile这个会过期….有效期好像只有七天。这个是只针对免费开发者账号。

总结

遇到问题后,多去GitHub上看,大部分都有解决方案,少部分没有的只能提高自己解决问题的技能了。