微信小程序第一手实践分享

目录:

1. 如何理解小程序

2. 小程序如何串联微信

3.个人实践心得

今天是微信小程序正式上线的第一天,从小程序公布、内测到今天,市面上对于小程序众说纷纭,小程序的到来给我们(微信开发)带来了什么,仅仅是又多了一种推广渠道吗?又或者是真的像外界说的那样它将取代APP?今天就和大家分享我个人对小程序的理解以及开发过程中的一些体会。

一、如何理解小程序

张小龙是基于他对未来服务场景——所见即所得的信息交互过程提出的小程序,他认为微信新形式的服务不应当只是停留在原有公众号订阅、推送的基础上;而应当更类似于APP支持一些扩展开发的能力但又无需用户下载安装便能提供信息交互。

小程序对用户来说可以实现用完即走、用户不会在其中有太多的驻留,同时也不会有太多的推送消息对用户形成侵扰。那么接下来我们就从小龙提出的产品理念来看小程序和公众号、APP、传统网站的区别。

相比公众号而言,小程序省去了菜单等形式取而代之的直接是UI操作界面,这使交互过程变得更加直观、便捷;同时小程序可以直接置顶在会话界面(只能1个),使用起来较为方便。但是小程序不支持消息推送,同时在搜索上小程序暂不支持模糊搜索这也就意味小程序在微信内没有入口,而是希望商家通过二维码自行推广,可以看出微信不希望服务商将微信当作应用商店来对待。所以:

  • 从推广角度来说,小程序不如公众号
  • 从用户体验上来说,小程序的形式类似于APP要好于公众号(公众号有些像命令窗口)

和APP相比较,

  • 分发渠道:小程序分发渠道比较单一,只能通过二维码线下分发而APP则可以通过下载链接、应用商店、二维码等进行分发
  • 开发角度来说:开发一套跨平台的APP远大于小程序的开发
  • 用户体验上:小程序是Hybird形式,要优于H5应用但不如原生APP体验好
  • 信息表达上:小程序限定程序大小不超过1M也就意味着信息量不会太大、界面跳转不会太多,因此获取有效信息的效率上小程序较高

所以相比APP,小程序还是略有劣势的,但你无法反驳的是小程序信息的传播效率一定会高于普通APP,因为它是在微信内使用。相信大家和我一样在手机的APP中微信一定是打开次数相当多、驻留时间相当长的一个应用。

对比传统网站而言,传统网站虽然传播、使用便捷,但其不具备APP的特性,所以从移动互联领域来说不具有太大可比性,因为两者形式不是一类。这里之所以列出来是想说明两点:

  • 小程序是可以基于微信内核调用基础的手机本地能力的(拍照)
  • 小程序不同于web的测试OK后能立即发布上线,它需要经过微信审核通过后才能正式上线;因此它不适合于一些以节假日促销活动为主的推广应用。
  • 从APP的最终形态上来,小程序是基于微信内核的微应用,它不能独立运行;
  • 从应用架构上来说看,小程序是Hybird形式。所以从产品体验上小程序介于H5和原生app之间,初次访问时加载速度较H5提升不大;
  • 不过在不关闭的前提下小程序是具有断网缓存使用的能力(我测试A、B两个页面,初次打开A后启用飞行模式后点击跳转可正常跳转到B页面,同时B页面的非网络请求action可以被触发);
  • 从这一点可以看出小程序确实是将编译后的资源下载到了微信客户端内。

开发过程来看,小程序的编码风格接近于html,上手相对容易;在控件及API上局限于微信团队的开发提供,不允许引入第三方js资源也无法集成第三方SDK。

我们尝试了从多个角度去理解微信小程序,现在我们可以回答为什么小程序无法取代APP。

  • 小程序没有独立入口。
  • 小程序没有推送能力,而目前行业内,稳定的消息推送能力已经被视为APP的一个基本能力。
  • 组件及功能的局限,小程序不能引入第三方js也无法集成第三方SDK,这就不适合功能复杂尤其是企业级的APP。
  • 上线须提前提交微信审核(假如京东双11上小程序然后一不小心被拒了…)而APP目前多支持热更新能力。
  • 应用体验不如原生APP。所以微信小程序并不会取代APP,但它给一些研发能力不足的中小互联网企业提供了一种方式使得他们可以更快速便捷的将自己产品、服务通过微信渠道提供;有次看来小程序更像是一种工具。

同样,基于以上几点小程序也不太适合作为企业产品销售、推广的渠道,这也体验了张小龙对小程序是一个提供服务、用完即走的工具的定义。

在小程序没有发布之前,大家很关心小程序的入口问题。小程序在微信内没有入口,可以通过扫码、搜索(目前暂不支持模糊搜索)、好友分享获得;小程序间不能跳转;iOS上使用过的小程序会出现在【发现→小程序】标签组中,此外安卓上还可以把小程序的快捷方式放到桌面,会话界面只能置顶一个小程序即用户一次只能使用一个小程序。

二、小程序如何串联微信

小程序是微信的一个新产品,那作为可能已经开发过公众号服务的企业,我们能不能将公众号和小程序进行串联呢?如果可以,那么在哪些功能点上是可以相互串联的呢?

公众号和小程序做关联我们需要将其绑定到同一个开放平台账号中。

  • 在UI上,小程序无法复用公众号开发的界面,需要重写
  • 后台改造上,小程序后台要求支持HTTPS并且TLS 版本要在v1.2及以上(jdk1.7及以上)
  • 用户关联上,小程序和公众号的用户映射可以通过UnionID机制来对应

我们知道微信公众号一个强大的线下支持点就是近场服务,像门店、连WIFI,目前小程序支持导入公众号中的门店,然而对于我个人最为关心的WIFI功能暂时却无法串联。

本人将小程序二维码的链接信息放到了链接WIFI成功后跳转的URL上,发现并没有用,希望后续小程序能通过连来WIFI启动吧,这样对于服务、推广将有很大的帮助(设想下去饭店点餐,连上WIFI后直接启动点餐小程序…..)

三、个人实践心得

最后和大家分享下鄙人在小程序开发中的一些体会也可以说是槽点吧。

  • 对于屏幕适配,小程序提出了rpx的概念也推荐使用,750rpx=100%宽度,然而在高度上发现按照世面上普遍的16:9的屏幕算,高度全屏的值居然不是整数,最后发现没有一个比较好的设置高度全屏的表示方法(高度设置100%并不能全屏)。
  • 在后台的改造上也是发现iOS下请求正常而安卓异常,最后在轮胎的FAQ中发现官方说:TLS要在v1.2及以上,也就意味着jdk要使用1.7或者更高。

最后吐槽一下关于微信审核上的一些坑,微课堂签到的小程序因为填写微信号,询问用户是否关注普元公众号等内容被拒;可以看到小程序的审核是相当的严格,附上小程序上线审核说明网址:https://developers.weixin.qq.com/blogdetail?action=get_post_info&lang=zh_CN&token=2032443910&docid=c53fb90c11590a1b86c109b4006fae27

最后,总的来说,小程序的到来给企业对客户的服务通道在微信层面又打通了一环。希望小程序后续能开放更多功能(比方说连WIFI启动小程序....)

关于作者:

黄家伟

现任普元移动团队高级研发工程师

在移动安卓开发、微信接入开发、IDE开发领域有比较深的见解。曾参与过移动平台7.1微信构件、实时联调功能的研发。

原文发布于微信公众号 - EAWorld(eaworld)

原文发表时间:2017-01-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SDNLAB

如何规划软件定义的数据中心网络

数据中心网络是企业IT创建私有云和混合云架构战略中的关键组成部分,它能够改进数据中心的网络的自动化、敏捷性、安全性和分析能力,能够实现企业自有应用程序与公共云服...

1192
来自专栏测试开发架构之路

《Google软件测试之道》告诉你什么是测试

第一章:Google软件测试介绍 1.Google的测试团队并非雄兵百万,我们更像是小而精的特种部队,我们依靠的是出色的战术和高级武器 2.在Google,写代...

4707
来自专栏智能计算时代

为什么IoT开发人员困惑MQTT和CoAP?

最近在Exadel,我们遇到了一个有趣的挑战,对物联网的开发者。因为IoT应用程序获得了如此多的动力,所以有越来越多的选择如何开发它们。对于设备通信,两个专门的...

5015
来自专栏Java架构师历程

学习微服务的十大理由

始终关注新技术,语言和框架,以彻底改变您的组织。如果你仍然在你的立方体中使用整体框架中的代码搞乱,那么你可能生活在过去,那里有一个小应用程序和一些员工来处理它。...

2753
来自专栏云计算D1net

多云环境带来管理挑战

企业中多云环境的增长点燃了降低复杂性和冗余性管理工具的需求。 根据Gartner的数据,接近半数的大型企业将在2017年末之前运行混合云架构。灵活性、可伸缩性和...

42710
来自专栏重庆的技术分享区

成功准备微服务的5个步骤

原文地址:https://medium.com/@kikchee/5-steps-to-successfully-prepare-for-microservic...

1252
来自专栏企鹅号快讯

关于小程序的历史留存

微信小程序有一个很重要,但是却经常被忽略的功能——使用历史自动留存功能。 该功能最直观的表现形式是,小程序的使用历史列表。而除此之外,还有两个人们可能不太会注意...

24710
来自专栏织云平台团队的专栏

新时代运维监控能力的进化——天网云用户体验监控平台实践

运维团队审视业务质量监控能力时,有九个问题值得思考,九问运维后,我们重新审视传统的运维监控能力是否仍然能够满足业务对质量的要求,结合当下移动互联网与新兴的业务形...

1.1K2
来自专栏PPV课数据科学社区

【工具】MongoDB和orange使用案例

Orange Digital Orange Digital 是法国电信的子公司,负责向英国的EE(英国最大的移动数字服务提供商)和全欧洲的Orange输送数字服...

3155
来自专栏即时通讯技术

新手入门:零基础理解大型分布式架构的演进历史、技术原理、最佳实践

随着社会的发展、互联网技术的进步,以前的大型机服务端架构很显然由于高成本、难维护等原因渐渐地变得不再那么主流了,替代它的就是当下最火的互联网分布式架构。

1354

扫码关注云+社区

领取腾讯云代金券