@qihuan
2017-11-20T17:06:57.000000Z
字数 2157
阅读 912
微信小程序开发
小程序:
小程序是一种不需要下载、安装即可使用的应用,抛开操作系统的限制,在一个应用(微信)中能够获得类似打开一个本地app的体验。
开发进度规划:
(1)技术预研: 官方资料研究、微信开发工具熟悉(10.20-10.27);
(2)需求敲定:应用形态敲定、技术点探析(10.23-10.31);
(3)程序开发:前端程序实现、接口联调(11.1-11.10);
(4)版本提审:前后端联调、交互改善(11.13-11.17);
(5)版本发布(11.20-11.24)。
1) 应用形态及技术点(待明晰):
应用形态:
1、用户在线扫码进入点单
2、用户第一次扫码时提示要登录(获取手机号)
技术点:
1、获取用户手机号的方案及对应的需求、技术点
2、微信获取手机号无需密码,此处与APP的注册登录衔接方案的确定
3、菜单页的交互设计(client+server)
4、购物车缓存
5、支付等
注1) 小程序中的四种文件:
js -------- JavaScript文件;
json -------- 项目配置文件,负责窗口颜色等;
js -------- 类似HTML文件;
js -------- 类似CSS文件;
注2) 个人主体小程序与企业主体小程序的区别:
a)、接口限制
1. 微信支付:
小程序如需接入微信支付,本身必须要经过微信认证才行,而个人主体注册不支持认证,故个人主体注册的小程序不能使用微信支付。
2. 卡券:
会员卡涉及到用户财产安全的接口肯定会受到严格的监管,个人主体小程序无权使用。
3. 获取微信用户绑定的手机号码
仅开放给已通过微信认证的小程序使用;尚未认证的组织类小程序和个人主体小程序,都无法使用这个功能。
b)、部分能力限制
个人主体的小程序,不能使用附近的小程序功能,目前只有组织类小程序才能开通此项功能。
2) 需要解决的技术点:
1、入口情况解决
扫码: app扫码可继续识别桌号
微信扫码也要打开小程序
解决方案:
微信现已支持扫码普通二维码跳转小程序(eg:摩拜)
登陆小程序后台-设置-开发设置-最下面的扫普通链接二维码打开小程序-点击启用(目前暂不支持个人申请的小程序)-然后添加并设置,详情参考如下:
http://www.cnblogs.com/lijuntao/p/6644935.html
http://www.aiyingli.com/42386.html
2、小程序扫码、时间
不能持续在同一家店,缓存时间/重新扫码
解决方案:
小程序服务器端可保存session_key和openid,并设定缓存时间。如果缓存中没有session_key或者过期,小程序需重新登录。
其中小程序登录态维护实现流程
(1)、通过wx.login获取登录态。
(2)、通过登录返回的code发送给服务器,服务器用code换取session_key和openid后。
(3)、获取session_key后一般使用缓存框架保存登录态,服务端随机生成一串唯一字符串3rdSessionId为key,session_key为value组成键值对并存到缓存当中,缓存时间视情况自行决定。
(4)、将3rdSessionId返回给客户端
(5)、客户端将3rdSessionId缓存到localStorage中,后续接口从缓存中读取3rdSessionId,传递给服务器;服务器根据3rdSessionId来判断用户身份。
(6)、如果服务器根据3rdSessionId在缓存中查找是否存在session_key,如果存在正常执行;如果不存在小程序未登录,重新从第一步流程走。
http://www.cnblogs.com/nosqlcoco/p/6242316.html
https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-login.html#wxloginobject
https://mp.weixin.qq.com/debug/wxadoc/dev/api/data.html
http://www.jb51.net/article/103283.htm
3、价格/店
不同店得有不同的价格
4、扫码确认店
分享后要扫码确认店
解决方案:
转发(分享)onShareAppMessage(options)方法其path字段可以为自定义路径,即分享路径可自行调整,让用户获取分享后进入扫码提示页,进而通过扫码获取菜单信息。
https://mp.weixin.qq.com/debug/wxadoc/dev/api/share.html#onshareappmessageoptions
5、支付
条件:已通过微信认证
(1)、服务号、企业号已通过微信认证;
(2)、订阅号已通过微信认证(仅支持政府或媒体类型)
https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-pay.html
https://pay.weixin.qq.com/wiki/doc/api/wxa/wxa_api.php?chapter=7_3&index=1
6、浮窗是否可以展现
技术上可行(有可行性案例,eg:智慧点餐)
https://mp.weixin.qq.com/debug/wxadoc/dev/api/api-react.html