首页 > 个性签名 正文
【空间彩色留言代码】为什么小米开发者向Android提交两行代码,喷给网民?

时间:2023-02-16 17:10:50 阅读: 评论: 作者:佚名

这两天,“小米提出禁止从Android手机提取APK文件,被谷歌驳回”的消息很火。

在这则新闻中,外网上有一条名为Mishaal Rahman的推文,小米开发者表示:“Android设备所有者将完全阻止从手机复制APK文件。”

这是因为APK可能包含个人资源,为了用户安全,最好只在Google play和可靠的第三方应用市场上获取APK。

很多不明真相的网友看到这个,直接炸毛了。我是冲着安卓自由开放的生态来的。人民群众高兴,你的小米居然想搞封闭的生态?

但事实上,仔细查看该开发人员的代码后,发现限制设备用户使用ADB Shell(在计算机上调试应用程序时使用的命令行开发工具)提取APK文件。

对于中国大陆的Android用户来说,这种操作应该不陌生。有喜欢的游戏,但找不到住的地方,也不想给钱。

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

那么网站上的这个应用程序是从哪里来的?购买游戏的用户使用ADB shell等手段将该游戏还原为安装程序。

这位开发者的提议很明确,就是为了防止防盗版。

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

因为这两行代码不影响用户从第三方下载APK,也不影响通过手机交换和安装APK的操作。

"480"/>

结果这个出发点被曲解了,搞了个大新闻,引来了许多的骂声。

至于为啥谷歌不同意,其中一个原因是这两行代码并没有那么实用。

根据外国开发者的说法,这个做法只能拦住那些普通用户。

有一定技术能力的用户安装一个调试版本的安卓系统就能和以往一样用 ADB pull 提取 APK 。

只要有那么一两个人去安装了调试版本的系统,并且把 APK 提取出来进行分享,那这个保护措施就等于废了。

就好比你把世界上所有住户的钥匙都没收了,但只要还有开锁匠在,住户们最终还是能进自己家门。

巧的是,绝大部分的普通用户平时并不会用 ADB 抓包各种软件,去干这个事情的都是有点儿水平的用户,这个代码根本拦不住这些技术党。

如果再深入地去看一下双方在这个项目下的留言,我们可以发现其实这场风波的本质在于两者所在地应用市场生态的差异。

小米开发者提出,他始终觉得直接导出数据是不安全不合适的,并且以那些付费下载的应用程序举例。

比如有一个人付费购买 App 后,抓包出 APK ,放到各种平台上给别人下载安装,给开发者带来巨大损失。

然而外国开发者认为则是觉得,这个事情和用户怎么干没关系,那些付费应用应该检查用户是否付过钱。

比如可以通过查询 Google Play 账号的购买记录、查询设备、查询安装程序来判断这个 App 是不是付费过的。

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

放眼中国大陆,那么多的应用市场里,各位差友觉得哪家算得上 “ 最大 ” 的?这恐怕很难有一个具体的答案。

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

如果我把那个 App 抓包在华为手机上安装,华为手机应用市场也不会有我的购买记录。

可是作为一个安卓用户,隔一年换个系统用用是很常见的操作,我明明是付过钱的正版用户,到了华为那边却成了盗版用户,这谁受得了?

鉴于这种情况,中国大陆安卓应用市场基本上就没有付费下载这种生态,开发商也无法依靠应用商店判断当前用户是否付过费。

拥有完善健全的付费下载应用的生态,对于厂商、软件开发公司以及独立开发者来说都是好事,可惜这其中的根本问题,并不是两行代码就能解决得了的。

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

因为 APK 本质是一个压缩包,用户在电脑上把它的后缀改成. zip 之类的就可以轻松解压缩,然后就可以使用里面的一些图片。

这样一来就会涉及版权问题。

外国开发者的回答也很直接:图片资源应该靠版权法保护。

而从一开始,这位小米开发者就提出了自己的疑虑:在开发者模式的高权限下,用户手机中所有的数据都能被提取出来是一件很危险的事情。

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

至少从表面上看,这位开发者是为了用户隐私在着想。

但实际上,外国开发者认为 APK 里面的东西根本就不能算私有资源,他的代码也拦不住真正想要看这些资源的人。

反正掰扯半天,这个提议最终被谷歌给驳回了。

从表面上看是双方各执一词无法互相理解,本质上的原因其实很简单。

说白了,这位小米开发者发起这个修改,是因为他看到了一些安卓系统本身存在的问题,并且逐一列出了理由。

只是很可惜,这些问题在外国的开发者眼里并不算什么问题,更何况这代码也不够牛 X ,自然也不用谈去解决问题了。

其实吧,想要保护收费应用的方法根本就不在于提高 APK 的提取门槛,你的门槛再高,也有高手能跨过去。

与其搞这些东西,不如想想怎么给应用搞一个更加合理点的收费验证系统比较实在。

  • 评论列表

发表评论: