起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1974|回复: 0

[分享] WeX5 V3.6版本开发经验总结

[复制链接]

8

主题

38

帖子

243

积分

中级会员

Rank: 3Rank: 3

积分
243
QQ
发表于 2017-2-21 11:06:15 | 显示全部楼层 |阅读模式
本帖最后由 caison 于 2017-2-21 11:14 编辑

时隔一年,再次使用WeX5 这个不需要学习移动原生开发就可以轻松开发APP的跨平台工具,牛逼的不要不要的。这次的项目是一个O2O购物的项目,工期两个月整,包括ios端、android端、门店web管理端,目前app已经上架审核通过。因客户还未开始推广,仍处于商业保密阶段。下面谈谈本次项目使用WeX5 V3.6版本的开发经验与总结:因本人之前使用WeX5 V3.2.1版本开发过一个O2O上门服务的项目,所以本次开发之前就先查看了之前写的开发经验。
WeX5 V3.2.1版本开发心得与总结

毕竟版本差异比较大,开发过程中遇到了不少问题,在论坛中都发帖寻求过帮助,但最后还是通过自己努力全部得以解决。下面就跟大家分享下我遇到的问题和如何处理的。
问题一:第二次打开app,启动界面不显示的问题
打开app后,回到手机主界面,app在后台运行,再次打开app,不显示启动界面,此时会导致白屏。此问题在安卓下特别明显,因为安卓对html5的解析跟苹果还是差距太大。
解决办法:(在论坛可搜索到我的帖子)
1、修改WeX5的cordova插件
2、找到插件目录:Native/plugins/cordova-plugin-splashscreen
3、打开src/android子目录,打开SplashScreen.java文件
4、找到onDestroy 方法,将最后一行firstShow = true; 取消注释!!
5、如果不删除Native下已建的项目,那就要修改项目内的cordova插件,目录为:项目名\build\src\plugins\cordova-plugin-splashscreen
配图如下:


问题二:新版支付宝支付的问题

因为支付宝的产品线全线更新改版,对移动支付进行了全新的定义,针对每个app提供唯一的key,旧版的是统一的一个key,WeX5只支持旧版。
解决办法:
目前WeX5只能先将就使用旧版的接口,也就是mapi网关。具体详见下图。
微信截图_20170221100937.png
问题三:IOS 10.X以上 提示“可能是iphone变慢”

由于ios 10.x以上开始引导用户使用64的xcode进行打包,WeX5默认是32位的打包。
解决办法:
此问题可以通过生成源码工程,然后通过xcode手动进行打包来解决,但是由于本人生成安卓源码工程后,无法通过源码工程打包,再加上imac是跑在虚拟机,硬件条件非常有限,卡得要命,所以没有进行此方法的验证。有条件的兄弟们可以尝试下此方法。所以提示就提示呗,先不管。
问题四:IOS 定位问题(2个)
1、由于2017年苹果要求app的所有请求都必须是https的,页面中引入http相关的资源,可能导致无法定位。
2、通过navigator.geolocation.getCurrentPosition()来获取定位,会提示网址的问题。
解决办法:
1、将所有http相关的资源,全部改为https,目前第三方平台基本都支持https的。
2、可能是由于safari浏览器也具备定位功能,而且用法也跟cordova的定位一模一样,我改用了百度的定位navigator.baiduLocation.getCurrentPosition,但是安卓无法使用百度定位,我最后就是通过判断苹果设备还是安卓设备来区分调用,苹果使用百度定位,安卓使用cordova定位。
问题五:安卓4.4以下版本体验非常差
虽然WeX5提供了将浏览器一起打包的办法,安装包将近20M,安卓4.4以下的手机安装后体验也还是非常不流畅。
解决办法:
根据安卓各版本最新的占有率,4.4以下的版本占有率只有15.4%,这是国外的统计数据,国内的应该也差不多,甚至更低。然而,我们开发的app定位都是偏年轻的,使用4.4以下的用户就更少了,所以只能放大招了,项目合同中对安卓的支持,提升到4.4及以上,就解决了。
问题六:开发者证书的问题
此问题得感谢sanren_mark,大家可以直接查看以下链接即可。
下载的开发者证书显示是“此证书的签发者无效”?这是怎么回事?

顺便再谈谈关于IOS APP 上架的问题。
1、关于https的问题
估计大家都知道,苹果2017年新增了一个规定,所有app必须使用https的请求。
那么我们就需要部署支持https的应用后台,https需要相关证书,目前域名证书是最便宜的,也有免费的。
阿里云提供了一年的免费域名证书,只要购买了阿里云服务器,即可申请,申请后下载证书即可安装到阿里云服务器,安装步骤根据不同的web容器或中间件,阿里云都有详细的教程。
2、关于IPV6 only 的问题
这个问题是苹果2016年年中新增的规定,所有app必须支持,只有ipv6的网络环境,庆幸的是我并没有碰到此问题。估计默认都支持了吧。
我的服务器是阿里云的服务器,网络环境是经典网络,证书是免费的域名证书,目前ios上架已经通过。

最后介绍下我自己,211院校毕业,9年工作经验,java方向,福建泉州,我是个创业者,创业将近2年,但是没有稳定的市场,快养不活团队了,有项目的兄弟们,可以介绍介绍。手机:13599998100
邮箱:13599998100@139.com
qq:165489883


评分

参与人数 1威望 +30 收起 理由
liangyongfei + 30 很给力!

查看全部评分

QQ:165489883
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-4-27 02:57 , Processed in 0.059698 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表