关于微信红包,开发者们来讨论点干货把(动态黑科技相关)

2016-01-28 14:13:42 +08:00
 jayzjj000

前天,微信发布了红包照片,反响还是挺强烈的,不过看到论坛里大多数都是在讨论果照和抓包,并没有人关注到微信这个功能具体的实现方式。今天这阵子热潮也已经过去了,不如我们就来聊聊这个功能的技术干货。

其实微信这个功能在 iOS 上的实现方式无外乎下面两种:
1. 计划中的功能需求,客户端提前完成功能,提前上架,等待服务端下发数据展现。
2. 临时功能需求,客户端完全不知情,但是拥有线上修改 UI 和逻辑的能力,可以通过服务端下发数据和代码来完成新功能。

上面第一种应该是最常见的,但是对于第二种实现方式,是否有可能已经微信这次的这样做的可能性有多少,大家不妨来说说自己的想法。

楼主的想法比较多,一会就更新,先听听大家的意见~

7194 次点击
所在节点    iDev
34 条回复
bullettrain1433
2016-01-28 14:18:45 +08:00
第二种应该就是 JSPatcher 吧
Ison
2016-01-28 14:20:50 +08:00
这个问题之前也有考虑过
个人觉得可行方案是微信采用了单元化的 UI 设计模式(暂且这么叫吧)
把 UI 最基本要素都模块化了
然后通过后台传的参数对模块进行拼凑
然后就实现了动态更新界面的效果了
个人愚见。。。
pljhonglu
2016-01-28 14:37:42 +08:00
应该是模块化+后台配置
像春节红包这种功能应该是预先开发的
SourceMan
2016-01-28 14:44:14 +08:00
已有的功能隐藏 + 服务器功能开关
上次是限时公测,各数据获取完成,下线
发现 bug (可抓包等等),修复,发布 6.3.10 版本
jayzjj000
2016-01-28 15:05:09 +08:00
妈蛋 APPEND 的内容竟然不能使用 Markdown
jayzjj000
2016-01-28 15:05:20 +08:00
jayzjj000
2016-01-28 15:06:17 +08:00
@bullettrain1433 没错,类似于 JSPatch 的实现方式,但是这个风险偏高,微信应该不会用才对。。。。结果他竟然用了。。。然后出了一堆 Bug
jayzjj000
2016-01-28 15:08:03 +08:00
@Ison UI 可以模块化来通过服务端下发,但是逻辑无法服务端下发,比如说点击评论被屏蔽,出来一个要付钱才能评论的弹层。
jayzjj000
2016-01-28 15:09:11 +08:00
@pljhonglu 但是 Bug 真的多,真的多。。。从来没见过微信有这么多 Bug ,都可以算得上是故障了吧。。。感觉按微信这种谨慎的态度来说,太奇怪
yemenchun1
2016-01-28 15:09:52 +08:00
if time > someTime {
function( )
}
难道不是这样吗……
jayzjj000
2016-01-28 15:10:05 +08:00
@SourceMan 我刚开始也非常同意这个观点,我觉得微信干事差不多就是这样,但是这 Bug 数。。。
jayzjj000
2016-01-28 15:10:51 +08:00
@yemenchun1 也有其他方法可以实现
jayzjj000
2016-01-28 15:16:09 +08:00
😂好不容易装个逼,一下子就沉底了,不嗨森
yuchting
2016-01-28 15:18:32 +08:00
感觉,这次红包图片的活动策划加技术功能都很渣渣,都已经涉黄了。微信变成基础服务后,任何细微的功能的调整和新活动的放出,恐怕都会招致负面效果吧。
dapang1221
2016-01-28 15:23:10 +08:00
我觉得应该是预先开发,从低版本用不了这个功能这一点就能看出来。。。
dai269619118
2016-01-28 15:27:59 +08:00
黑科技是指远超越现今人类科技或知识所能及的范畴,缺乏目前科学根据并且违反自然原理的科学技术或者产品。
lz 不要知道了一个装逼的词汇 使劲用
jayzjj000
2016-01-28 15:28:41 +08:00
@dapang1221

同感,没有进行过部分人群的定投测试功能,就直接全量推送新功能了,感觉微信这次毁坏了我心里它一直谨慎小心的形象

@yuchting

动态下发支持多版本的开发量非常大,而且微信低版本的使用率应该不是非常高,抛弃低版本应该还是比较正常的
sxyclint
2016-01-28 15:29:43 +08:00
应该是预先开发的,然后在上一个版本预埋,之后通过云指令开启,这么做出错率低。另外 JSPatch 下发临时应付也是可以的,不过也只是临时用,下个版本更新就会替换掉,微信用 JSPatch 很正常吧,作者本身就在微信工作
jayzjj000
2016-01-28 15:30:18 +08:00
qinxi
2016-01-28 15:30:30 +08:00
我也想过怎么实现来着 但是我太菜 而且是后端的...唯一想到的就是脚本语言或者预先就有的功能被暂时关闭

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/253990

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX