写点什么

拼多多被苹果下架,竟然可以这样解决

  • 2020-04-08
  • 本文字数:1583 字

    阅读完需:约 5 分钟

拼多多被苹果下架,竟然可以这样解决

11 月 27 日,网友发现在 App Store 中搜索“拼多多”,只能搜索到“拼多多商家版”,而从拼多多官网扫描下载“拼多多买家版”二维码,跳转至 App Store 后,则显示 App 不可用。


虽说 iOS 的用户在拼多多的总用户群体中占比没那么大,但毕竟是三亿人都在拼的 App,此事一出,顿时激起千层浪,微博、百度等平台上议论不断,拼多多(被)成功抢占了热搜头条(恭喜拼多多运营人员被吃瓜群众带飞)。



很快,各自媒体相继发文蹭了蹭这个热点,于是这次下架风波的详细原因被大家伙儿丢了出来:目前,判断是与热更新类似的技术,导致拼多多审核版本与上架版本不一致,从而被 App Store 下架。


热更新,产品涵盖 iOS 端的朋友们一定对这个词不陌生。毕竟这种方法,能在服务器不关闭的情况下,允许用户打开应用直接下载安装更新代码(即绕过 App Store 审核的在线更新)。


而如果通过提交 App Store 审核的方式下发更新,考虑到 Android 和 iOS 同步,可能需要一周甚至更长的审核周期,这无疑会干扰大家伙儿的运营节奏——往大了说就是影响大伙儿赚钱呐。就拿文案来说,文案是影响转化率的关键一环,假如你的产品有个关键功能的文案写的很差、转化率贼低,你是急着赶紧上新版本改呢,还是慢慢悠悠等苹果十天半个月把新版本过审了再改呢?


因此,不少运营、产品、技术同学都对这个方法垂涎欲滴,希望钻钻空子,悄咪咪用热更新把发版这事儿办了。这次热更新下架风波中涉及的拼多多、荔枝 FM、搜狗地图等等,便是如此。只可惜还是没绕过苹果的复审,一不留神就被下了架。


难道真的就没办法绕一绕,做到不审核 就直接线上修改 App 控件 吗?

验证前置,告别热更新

有。不但有,还是苹果官方给出的方法。


其实,这里涉及到一个产品更新理念的问题。为什么会出现热更新的机制?就是为了解决线上环境常见的改版迭代问题推出的,企图避开苹果审核机制,直接后台控制版本更新,快速解决问题。


但是你想一想,同样都是改版,为什么不把验证前置呢?换句话说,如果我提前就将两个甚至三个、四个、一堆版本大方的展示给你苹果看,然后根据孰优孰劣的数据,将最优秀的版本留下、不好的版本去除,其最终效果,不正是热更新所希望达到的目标吗?


这便是 A/B 测试、灰度发布的理念了。


针对 iOS 开发者来说,Apple TestFlight 这个官方推出的方法,已经支持 iOS App 的 A/B 测试,允许线上更新版本。不过 TestFlight 的 A/B 测试是通过多次构建以及增强组实现的,这种实现方式需要多个版本构建,对开发者来讲并不友好,比如,怎样针对属性、版本等同时进行实验便是个已知且尚未解决的难题。


那有没有更好的,即不属于热更新这个禁区,又能实时更新版本,最好还能进行数据监控的工具?

A/B 测试+灰度发布的神兵利器

实际上,这种“验证前置”模式下提供的 A/B 测试和苹果严格限制的热更新不一样,因为主要是对标准属性的更改,在 App Store 可控范围内,所以 A/B 测试和灰度发布就不会被苹果封禁。在这方面,Testin 云测 A/B 测试已经率先支持诸多 App,例如 36 氪、自如、美图、在行、子弹短信等,皆在使用 Testin 云测来进行 A/B 测试和灰度发布。


Testin 云测 A/B 测试还针对不同模式,提供了不同的 A/B 测试方式。比如,在可视化模式中,只要你在已过审的 App 中集成了 SDK,那么,就可以在完全不用提交 App Store 审核的情况下,随时对标准控件属性(如颜色、文案、是否交互、是否隐藏等)进行更改,并实时上线。


不但如此,对于复杂的 A/B 测试,更可以使用灰度发布功能,先让各部分人群分别看到不同版本,而后通过开关机制,对数据表现最为突出的版本一键全量发布,即可直接让所有用户看到这个新版。关键的是,这也 无需审核


如果拼多多也是通过 Testin 云测的这种方式来实现线上实验、更新,恐怕这次的下架事件便不会发生了(当然,这样的话,热搜也上不了啦、卖家版下载排名蹿升到前十名的机遇也没啦,拼多多运营人员可要着急了哈哈)。


2020-04-08 19:373071

评论

发布
暂无评论
发现更多内容

真香~~看完看阿里P8大牛手写的450页文档总结,我精通Java并发编程了

Java架构之路

Java 程序员 架构 面试 编程语言

花火交易所系统APP软件开发

系统开发

Hystrix-技术专题-基础运作原理

码界西柚

“关灯”看这出戏,依旧是百年至美

脑极体

别找了,这份PDF是目前Java程序员最全面的学习文档,没有之一

Java架构之路

Java 程序员 架构 面试 编程语言

四面美团大众点评归来,分享一下我总结的面试题及解析:并发+spring+分布式+jvm+缓存+数据库

Java架构之路

Java 程序员 架构 面试 编程语言

游戏自动化测试——局内战斗

行者AI

测试

GitHub标星78.9K的算法宝典,让你分分钟刷爆LeetCode,更有“左神”精讲视频加持,金三银四offer手到擒来

程序员 面试 算法 架构师

python3参考秘籍-附PDF下载

程序那些事

Python 程序那些事 Python秘籍 Python数据分析

架构师训练营大作业1

邓昀垚

美团五面+滴滴四面,复盘总结117道面试题,大厂套路展露无遗

Java架构之路

Java 程序员 架构 面试 编程语言

Rust太难?那是你没看到这套Rust语言学习万字指南!

华为云开发者联盟

rust 语言 开发语言

架构师训练营第五周作业

Geek_xq

乘百度AI之风,媒体从业者们这样登上智能云端

脑极体

架构师系列11 微服务架构的思考

桃花原记

刘华:戏说Docker和K8s,一文让你成为懂王

刘华Kenneth

Docker 云计算 Kubernetes DevOps k8s

华为全栈AI技术干货深度解析,解锁企业AI开发“秘籍”

华为云开发者联盟

AI 全栈 开发

一周信创舆情观察(12.14~12.20)

统小信uos

今天,我们为什么应该读懂华为人工智能?

脑极体

普本开发三年,每天两小时面试备战,2个月后五面阿里定级P7

Java架构之路

Java 程序员 架构 面试 编程语言

【Java入门】Array

Albert

Java 七日更

Java异常处理的9个最佳实践,看看自己是不是都用过?

geekymv

Java 异常处理

架构师训练营第五周总结

Geek_xq

skynet源码分析之网络层—Lua层

赖猫

c++ lua skynet

TypeScript | 第五章:高级类型

梁龙先森

typescript 大前端 七日更

关于自己的一个梦(控制)

Yuchen

情绪控制 心理 个人 控制感 自我思考

领域驱动落地实现

星际行者

DDD 领域驱动

刨根问底,kafka到底会不会丢消息

爱笑的架构师

kafka 消息队列 Kafka知识点 消息中间件 七日更

微服务:服务本身的设计、维护以及治理

积极&丧

多线程之信号量(By C++)

赖猫

c++ 多线程

够屌!看完“大牛程序员必修16课”足足让你超越80%Java面试者!赶紧冲!

比伯

Java 编程 程序员 架构 面试

拼多多被苹果下架,竟然可以这样解决_文化 & 方法_云测数据_InfoQ精选文章