前不久小程序宣布公测的时候,我们领导就计划在小程序上开展一个项目,测试小程序的生态圈到底时候做哪些类型的应用,以便给后面的项目立项做参考。于是就成立了一个特别机动小组来吃螃蟹,而本人有幸参与其中负责倒水扫地抹桌子。
与领导经过几番激烈的撕逼后,我们组最后定了图片处理的方向,因为会涉及到使用 canvas (生成图片)以及一些用户交互问题(拖动图片),可以充分测试小程序的 js 性能瓶颈在哪里。
下面进入正题,我们聊聊小程序开发过程中遇到哪些坑:
小程序的名称体系是与公众号(订阅号 /服务号)共用的,所以能用的名称基本被注册的七七八八,这里建议有兴趣做小程序的朋友或公司尽早去注册名称。不过这里面有个坑,当你查询连续名称超过 30 次(大概)左右的时候,会被微信 ban 24 小时,就是 24 小时内不能再试名称能不能用
经历过公众号项目开发的朋友可能都遇过,一样的前端代码在安卓和苹果之间可能存在巨大差异,这得益与苹果版微信使用 safari 内核,而安卓统一使用 QQ 浏览器 X5 内核。这个坑爹设定同样延续到小程序。好不容易写了一段牛逼哄哄交互,在安卓上各种卡顿和报错,回想一下,这不是当年 FireFox 和 IE6 的前端噩梦吗!?
客观来说,将小程序比喻为一个实验品我觉得有点不妥,因为我们开发者才是真正的小白鼠!从项目开始到现在,碰到的 bug 两只手都数不完,甚至到目前离上线没几天了,还有些没有修复。然而每次官方修 BUG 也是惊心动魄,就像 12 月 21 号的 API 大更新,对我们就影响很大,项目基本上就 GG 重写了。
说完 API 的 bug 不得不说,微信版本会严重影响到小程序的 API ,就目前来看,微信的各个版本对小程序的支持程度都非常不一致。这有个很大的问题,微信版本的更新是决定在用户手里,如果用户不是一个版本积极更新者(像我家的女性),你的小程序可能会出现各种各样问题。
这个东西是必需吐槽的。首先是审核时间很不规律,反馈结果从两个小时到两天不等。更重要的是审核人员感觉没有做上岗前培训,各种乱套政策,我们做了个生成搞笑证书的功能,就说我们违规提供假结婚证假学历证;我们内部建立了一个图片共享页,就说我们违规诱导用户分享邀请朋友参与。还有各种各样的主观审核不过理由,功能过于简单,功能不完整。
从功能上看,小程序基本上是一个阉割版服务号,缺少很多日常用到的功能,或者说操作起来变得更加繁琐,例如:界面上的图片不能直接长按保存,只能通过图片预览在保存; canvas 也与 JS 原生的差别很大,也不能生成图片后直接保存,还是丫的预览;不能发朋友圈等等。从政策上看,小程序比公众号限制更加严格,每一个页面每一个功能都需要审核,而且可发挥的范围更加狭窄。总体而言,对于我们来说只是一次吃螃蟹,影响不大。但如果你们的新项目希望首发在小程序,请三思,这个东西实际上并没有他们吹得那么棒。
另外,如果你们开发过程中遇到的问题可以在后面提出,只要我们经历过的会一一回答。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.