洗白白手记:洗白的应用哪里来?

在推出「豌豆洗白白」一段时间后,我们欣喜地看到了用户对于我们工作的认可,也看到了竞争对手相继推出类似功能。但同时,在业界也开始流传一种说法:「洗应用」开始火爆,是因为可以将应用洗成自己的版本,比如洗成「豌豆荚的版本」,来获取利益。

这种说法实在是出乎我们的意料之外。首先,并没有什么「豌豆荚的版本」这一说,每个应用都应该只有开发者唯一签名的版本。我们知道有些市场会把开发者上传的安装包强制打包成自己的签名,迫于市场压力,开发者不得不屈服,于是就出现了「应用市场的版本」。当用户安装了这样重新打包的版本之后,就只能在这个市场下载升级了,甚至都不能升级到开发者官方网站上的新版本。这正是我们所反对的做法,所以豌豆荚是不会打包「自己的版本」的。

不过我们与一些应用有「独家发布」的合作关系,所以有时候应用的启动画面里会带有豌豆荚的 logo。就算长成这样的应用,也不是我们强制打包的「豌豆荚的版本」哦:
豌豆荚独家发布

那么,在洗白白洗出问题应用后,我们推荐用户替换的安装包是哪里来的呢?

这个就要从豌豆荚的「应用搜索」说起了。通过与国内十几家主流的 Android 应用市场合作,豌豆荚应用搜索抓取并聚合了同一应用的不同版本,这些不同的版本都可以在豌豆荚客户端的「更多版本」功能里看到:

在这么多的应用市场里面,我们会通过一些算法规则,自动选择一个最合适的包来作为洗白白的推荐替换安装包。在这个规则之下,不论是从豌豆荚开发者中心提交的应用,还是从 Google Play 或是其他国内市场聚合的应用,都是在同一起跑线上公平竞争的。规则详细解释如下:

在收到各家市场给过来的安装包信息之后,我们会对所有的包进行安全检测、签名比对、广告扫描和隐私权限检查。洗白白的替换安装包必须是无病毒、无通知栏广告、无隐私问题的官方签名版本,因此只要一个安装包的安全检测没有通过,或者隐私权限不符合标准,或者代码中含有通知栏广告组件,或者签名与官方签名不相同,就会在这一步被剔除掉。剩下的安装包里面,无广告组件的版本比含有内嵌广告的优先级要高一些。

在经过以上筛选之后,留下来的安装包都是含有更少广告、隐私更放心的官方版本了,这个时候唯一的区别就是来源的应用市场了。因为洗白白的替换安装包都是需要联网下载的,所以我们在选择来源应用市场时,更多考虑的是下载服务的稳定性。因此我们对每一个应用市场都会自动计算一个权重分,这个分数主要跟市场的服务稳定程度相关,比如下载文件的成功率越高,那么权重相应就会高;如果这个市场提供给我们的死链数量比较多,那么权重就会变低。权重是实时计算的,假如某个市场的服务器突然挂了,那么下载成功率降低后它的权重也会随之降低,就不会优先出现了。通过这样的机制,我们可以保证用户在豌豆荚下载应用时的稳定性。

一言以蔽之,「豌豆洗白白」并不会把应用洗成「豌豆荚的版本」。洗出问题应用后,我们会在聚合到的各个市场的官方版本中,依靠公平的算法筛选出最安全、最放心和最稳定的下载来源提供给大家,并不会对某个市场有特殊的偏好。

洗白白手记系列:
王俊煜:「豌豆洗白白」其实是一个计划外的产物
出发点是用户的痛——山寨应用和通知栏广告
绕开 Android 应用开发的那些「坑」

洗白白手记:洗白的应用哪里来?》上有 5 条评论

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>