为啥小米开发者向安卓提交了两行代码,就被网友给喷了?

羽毛球场尺寸2022-08-23  14

为啥小米开发者向安卓提交了两行代码,就被网友给喷了?

这两天,一则关于“小米提议禁止安卓手机提取APK文件被谷歌拒绝”的新闻很火。

在这条新闻中,据说外网上有一个叫米沙·拉赫曼(Mishaal Rahman)的推手爆料,称小米开发者“打算彻底阻止安卓设备所有者从手机中复制APK文件”。

其原因是APK可能包含一些私人资源。为了保障用户的安全,最好只从Google Play和可信的第三方应用市场获取APK。

很多不明真相的网友看到这里直接炸了。我是为了安卓免费开放的生态而来的。人们喜欢它。你小米居然要搞封闭生态?

但其实我仔细看了一下这个开发者的代码,发现它只是限制设备用户使用ADB Shell(在电脑上调试应用程序时使用的命令行开发工具)提取APK文件。

对于中国大陆的Android用户来说,这种操作并不陌生:你有一款喜欢的游戏,但是你找不到地方购买或者不想花钱购买。

所以你会去一些众包网站找这个游戏的APK,下载到手机上安装。

那么网站上的这个APK是从哪里来的呢?就是那些买了游戏的用户,用ADB Shell等手段把游戏还原到一个安装程序里。

这个开发者的提议,说白了就是防止防盗版被破解。

这与之前“完全阻止安卓设备所有者从手机中复制APK文件”的本质完全不同。

因为这两行代码不会影响用户从第三方下载APK,或者手机互相传输APK并安装的操作。

结果这个出发点被曲解了,搞了个大新闻,引来一大堆非议。

至于Google为什么不同意,原因之一就是这两行代码不那么实用。

按照国外开发者的说法,这种做法只能让普通用户止步。

有一定技术能力的用户,只要安装一个调试版的Android,就可以像以前一样用ADB pull提取APK。

只要有一两个人安装了系统的调试版,提取了APK进行共享,那么这个保护措施就等于浪费了。

这就好比你把全世界所有住户的钥匙都没收了,但只要有一个锁匠,住户最后就能进入自己的家。

无独有偶,大部分普通用户通常不会用ADB去抢各种软件,但是这么做的都是一些级别的用户,这个代码根本挡不住这些技术党。

如果更深入的看一下这个项目下双方的留言,可以发现这场风波的本质在于双方所在的应用市场的生态差异。

小米的开发者提出,他一直觉得直接导出数据不安全,不合适,并举出那些付费下载的应用为例。

比如一个人付费了一个App之后,抢到了APK,放到各个平台上给别人下载安装,给开发者带来了巨大的损失。

但是国外的开发者认为这个事情和用户做什么没有关系。那些付费的应用要检查用户是否付费了。

比如可以查看Google Play账号的购买记录,查看设备,查看安装程序,确定这个App是否已经付费。

这是因为Google Play在海外有一个相对统一的应用市场,甚至接近垄断。这种操作在外国人眼里是常识,但在中国大陆的安卓生态环境下并不适用。

看看中国大陆,在这么多的应用市场中,你认为哪一个是“最大的”?恐怕很难有具体的答案。

比如我去年在小米应用商店花钱买了个App,今年换了华为手机。

如果我抓取App安装在华为手机上,华为手机应用市场就不会有我的购买记录。

不过作为安卓用户,隔年换系统是很常见的操作。我明明是付费正版用户,到了华为却成了盗版用户。谁能受得了?

针对这种情况,中国大陆安卓应用市场基本不存在付费下载的生态,开发者无法依靠应用商店判断当前用户是否付费。

有一个完善的付费下载应用生态,对厂商、软件开发公司、独立开发者都有好处。不幸的是,根本问题不是两行代码就能解决的。

此外,小米开发者还提到了另一个问题,那就是APK图片等资源的泄露。

因为APK本质上是一个压缩包,用户可以通过将它的后缀改为。zip在电脑上,然后他们可以使用里面的一些图片。

这就涉及到版权问题。

国外开发者的回答也很直白:图像资源应该受到著作权法的保护。

而且从一开始,小米开发者就提出了自己的质疑:在开发者模式的高权限下,用户手机里的所有数据都可以被提取出来,这是一件非常危险的事情。

而且,每个人都可以通过APK看到这些数据。这些数据属于用户的个人隐私,第三方不应该有这个权利,所以他用那两行代码做了一些限制。

至少从表面上看,这个开发者是在考虑用户隐私。

但实际上,国外的开发者认为APK的内容根本不能算是私有资源,他们的代码也无法阻止真正想看这些资源的人。

反正过了很久,这个提议最后还是被谷歌否决了。

表面上双方无法理解对方,但本质原因其实很简单。

说白了,这个小米开发者发起这个修改,是因为他看到了Android本身的一些问题,并一一列举了原因。

只是可惜这些问题在国外开发者眼里都不是问题。更何况这个代码还不够好,没必要谈解决问题。

实际上,保护付费应用的方法根本不是提高APK提取的门槛。无论你的门槛有多高,有些专家都能跨越。

与其做这些事,不如想想如何为应用做一个更合理的收费验证体系。

转载请注明原文地址:https://juke.outofmemory.cn/read/1305990.html

最新回复(0)