国内安卓 APP 怎么都不喜欢升级 API 等级?

2023-10-07 19:53:02 +08:00
 juejinloop

一堆国产应用的 SDK 等级还停留在 28 甚至以下的,导致用户都无法单独给媒体文件权限,必须整个外部储存全部给他读。

特别点名腾讯 QQ ,还在停留在 API 26/安卓 8 ,微信都升到 31 了。

作为对比,手机上几乎所有非国产应用全都升级到了 API 33 / 安卓 13 版本了。

之前有报道说国内的应用商店会在年底前要求 API 等级 >= 30 ,不知道这些应用会不会遵守。

https://www.ithome.com/0/714/306.htm

12464 次点击
所在节点    Android
49 条回复
bclerdx
2023-10-07 23:32:37 +08:00
@laoshiqi86 咱大清的国庆,不符合世界主流,世界主流都是一样的操作,奈何大清与他们唱反调。大清以自我为中心,窃以为中原还在世界的中间呢。
hamsterbase
2023-10-08 00:05:27 +08:00
对于国民级 app , 即使影响到万分之一用户,也是好几万人。
damnthatsfunny
2023-10-08 00:13:07 +08:00
@JiuW 这类 app 在手机厂商内部有白名单机制,可以长期逗留后台不会被杀进程,甚至前台进程杀死了,后台的服务进程还在
kkk9
2023-10-08 03:24:00 +08:00
@zhhmax #14 😶我没有!不可能!🙇🙇读书人的事情怎么怎么能说,明明就是遥遥领先!🙇🙇
ysc3839
2023-10-08 05:28:02 +08:00
说个题外话,没记错的话,target api 小于 Android 11 的应用,即使用一些国产系统,禁止读取应用列表,还是有办法探测某个 app 是否安装的,方法非常简单,直接读取 /data/data/<包名> ,如果安装了,会返回 Permission denied ,没安装则返回 No such file or directory 。
这个问题在新版本 Android 上已经修复了,但是仅针对 target api 大于等于 Android 11 的应用启用,不知道谷歌为什么这么做。
ipcjs
2023-10-08 05:43:33 +08:00
@kkk9 先搞清楚 target 和 min 的区别,再来编段子🙃️
Muniesa
2023-10-08 07:38:56 +08:00
target 越高限制越多,代码还要修改,不是强制的话他们哪里有动力升级
zhangjiafan
2023-10-08 09:37:27 +08:00
我维护 30 个 app ,都是老旧代码,能稳定跑就跑,升级有什么后果,举个例子。最新的 33 ,用老的 intent 会崩溃。我需要把 30 个 app 中使用到这段代码的部分进行修改,这工作量,足以够我看完一部电视剧的
unco020511
2023-10-08 10:00:02 +08:00
第一个是 google play store 要求确实比较严格,然后国内应用商店也会要求 target 但没那么激进.第二个是升级 target 一般来说改动还蛮大的,这种超级 app 不是你说想升就升的,总得有个自下而上再自上而下的过程
yiranshaxiao
2023-10-08 10:07:03 +08:00
1. 付出与收益不符。收益在用户端,更保护隐私、更省电之类的。
2. 不少大厂用各种黑科技,有版本限制的,升级 target api ,就无效了。(用来提升体验,还是拿数据,就不好说了)
3. 不少大厂开源的 sdk ,已经没人维护,但是又用到了。要接入方自行兼容升级。
root71370
2023-10-08 11:38:16 +08:00
@zhangjiafan 所以上班可以看电视剧吗🤣
Zien
2023-10-08 11:47:42 +08:00
没什么好奇怪的,本来想吐槽,打了几个字想了想还是算了,这些离谱现象的背后根本不是什么 API 之类的问题… 像权限滥用、截图监测、自建 push 、阉割框架、Callkit 、云上贵州、所以的.cn 而非/cn 、flash 、http….
感觉一切都会异化
nnegier
2023-10-08 12:39:00 +08:00
那还得怪谷歌,我的也都还在 29 ,原因都是谷歌在权限上搞幺蛾子,比如文件权限,还有包查看权限,这两个简直要了很多人的命,好像后面的 api 等级又给送回来了,但有真空不知道怎么填补
LavaC
2023-10-08 12:41:36 +08:00
安卓 API 我可能不会升级,但我小程序的 API 你开发者三个月内必须给我跟进
Yzh361
2023-10-08 12:45:08 +08:00
别升 api 。我那用了十年的安卓 4.4HTC 还很好用呢
kkk9
2023-10-08 14:11:59 +08:00
@ipcjs #26 😅我相信您很清楚 target 和 min 的区别,我知道您很急,但是您别急啊。

升 target 涉及到很多东西,并不是您觉得设置一个 min 就可以保证兼容的,我自认我编的段子已经非常保守了。

----
《 Android Target 31 升级全攻略 —— 记阿里首个超级 App 的坎坷升级之路》
作者:阿里巴巴终端技术
https://juejin.cn/post/7114225231845457956

[摘抄]

从技术看问题:

变化频繁:以 Android 12 为例,Release 发布后至少有 5 次文档变动(包括启动图、模糊定位、文件存储等),并下发过 Release Patch 至厂商,厂商再根据自己的需求、节奏来看是否“实施”Patch ,导致适配成本成倍增加;加之各 ROM 的碎片化,过程中需要持续调整对焦

材料不全:当时业内无较好的分析文档,主流 App 也未适配到 31 ,很多需要自己探索,如新增权限判断、外置存储使用、启动图等,官方要么未提及,要么只说大概,需要自己分析源码 + 不断的实践才能明确。

适配困难:每一个权限调整,其涉及 API 众多、用户影响高,且适配量很大,以我们为例,相比过去 Target 21 → 26 的 20+ 系统 API ,本次涉及 300+ 系统 API ,上千处调用,涵盖多个技术栈,改造成本高、影响范围广,为我们的适配带来了不小挑战

作为高速发展的超级 App ,高德需要做到既保持内部“持续的业务增长”,又能消化外部“要求高、变化快、难度大”。经过大家的不懈努力,最终圆满完成了 Target 28 → 31 的升级。
kerb15
2023-10-08 15:57:05 +08:00
从开发者的角度,经常适配确实很烦
lincanbin
2023-10-08 16:05:36 +08:00
很多程序员都生活在一线城市,手机两年一换,有点陷入信息茧房了。
实际上看回收上来的数据,很多农村地区还在用六七年前的老人机。

一些部门适配的最低配机型,是 2016 年的 OPPO A57 。
abelmakihara
2023-10-08 17:10:56 +08:00
@LavaC 这也太扎心了
TArysiyehua
2023-10-08 17:15:30 +08:00
升级超级麻烦的,而且领导基本不会不会给你时间让你升级,最多就几天。但是升级不仅需要技术,还需要产品评估,设计一些交互,一些产品逻辑。
说白了就是,升级的成本很高很高,但是但是,升级的收益可以说为 0 ,就是会在 v2 里收到个好评,这种情况下,是个正常的公司都选择不升级

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

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

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

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

© 2021 V2EX