V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
alexkkaa
V2EX  ›  程序员

现在国内的安卓环境为何如此恶劣

  •  2
     
  •   alexkkaa · 231 天前 · 9269 次点击
    这是一个创建于 231 天前的主题,其中的信息可能已经有所发展或是发生改变。

    自己写了个小工具监测 wifi 连接情况, 发现前台广播在应用切换到后台后没几分钟就被 vivo 的系统给冻结了, 根本就收不到任何广播。 系统设置里能调的都调了,依然是过一会就收不到。 换到小米情况依然如此。

    现在国内的厂商为何如此没有节草, 既然提供了选项让手动设置允许应用后台常驻, 为毛跟个摆设一样?

    ios 端不清楚, 安卓端真的是环境比 pc 桌面还恶劣, 各个山头都有自己的规则, 上架推广又难。 感觉除了几个头部厂商可以进白名单, 少数的技术好的公司可以找各种还没被封堵的漏洞, 一般的小公司和个人开发者真的是难。

    话说回来早些时候的那批开发者真是风口上飞, 不光没有成型的规则, 市场竞争也不激烈。 现在的安卓开发真的是地狱模式。

    第 1 条附言  ·  231 天前
    我并不是说不要安卓限制毒瘤 没有绝对的自由 事实上任何一个领域很快会被聪明的国人玩坏。 合理的方案应该是官方提供一个白名单机制 允许开发者向用户申请进入白名单 并检测 app 的运行 在 app 有作恶的倾向时提醒 用户 对于作恶的 app 需要向 pc 端对待病毒一样严厉警告用户。 而现在是各个厂商自己搞自己的策略,不像 pc 端 windows 那样或者 ios 那样 , 山头太多。
    104 条回复    2022-01-15 07:16:45 +08:00
    1  2  
    66beta
        1
    66beta  
       231 天前   ❤️ 4
    在后台一直读取 wifi 状态,估计是重点照顾对象了
    murmur
        2
    murmur  
       231 天前   ❤️ 2
    说明现在 app 是没合理需求愣是创造需求,原神咋那么牛逼,人家不上市场一样 w 赚麻了,最后腾讯求着和解
    hello2090
        3
    hello2090  
       231 天前 via iPhone   ❤️ 7
    话说啥不恶劣?
    alexkkaa
        4
    alexkkaa  
    OP
       231 天前
    @66beta 就服务里注册了个广播啊 没有任何耗电动作 非常简单一个程序
    zmqiang
        5
    zmqiang  
       231 天前   ❤️ 1
    以用户角度来看,感觉有两个大的原因:开源和 Google 被封

    开源:各个厂商都可以分一杯羹,免不了为了商业利益各种骚操作

    Google 被封:导致国内无法使用原生的服务,一个简单的推送功能都会变的服务,必须使用第三方厂商的服务,然后看第一条
    alexkkaa
        6
    alexkkaa  
    OP
       231 天前
    @murmur 自己用的小工具 除了真实需求没有一丝多余的东西 怎么就是没需求创造需求了?
    kop1989
        7
    kop1989  
       231 天前
    关闭 doze 模式了么?如果没关闭(或者没加入厂商 ROM 的 doze 白名单)那你怎么设置不都是白搭么?
    vanton
        8
    vanton  
       231 天前   ❤️ 1
    google 被封,监管部门不作为。
    根本原因就完全不能说了。
    murmur
        9
    murmur  
       231 天前
    @alexkkaa 那你描述下需求,这东西我认为的合理需求就是告诉用户 4g 的时候省着点用流量,这明显是个前台需求
    kop1989
        10
    kop1989  
       231 天前   ❤️ 8
    另外,早期的 Android 就是个黑暗森林。怎么就“风口上飞”了?
    就光为了实现一个实时推送,黑科技频出。双 service 、1 毫秒亮屏、1 像素驻留等等。
    这真的好么?
    66beta
        11
    66beta  
       231 天前   ❤️ 2
    @zmqiang https://push.mobileservice.cn/index.html 统一推送联盟已经上线了,只不过 APP 都不接罢了
    xiao109
        12
    xiao109  
       231 天前
    多学学腾讯的,QQ 你不退出登录永远杀不死他的进程
    alexkkaa
        13
    alexkkaa  
    OP
       231 天前
    @kop1989 这个 doze 模式安卓默认的我的应用是没有优化 就是不限制 ,viv 哦的系统还有自己的一套电池管理策略, 设置为不限制, 依然是一段时间后就收不到
    alexkkaa
        14
    alexkkaa  
    OP
       231 天前
    @murmur 看我的这个帖子 https://v2ex.com/t/824933
    alexkkaa
        15
    alexkkaa  
    OP
       231 天前
    @kop1989 早期是很早的时候 大概是 11 年到 17 年
    kop1989
        16
    kop1989  
       231 天前
    @alexkkaa #13 不限制? doze 是系统级的,这不是你“是否优化”的问题。
    kop1989
        17
    kop1989  
       231 天前
    @alexkkaa #15 我就是 11 年入的行,第一个项目就是 24 小时 GPS ,远程遥控录音录像,采集通话记录和通讯录,短信的监工系统。
    murmur
        18
    murmur  
       231 天前
    @alexkkaa 小米有个功能叫 在已保存的网络附近自动开启 wifi ,15 分钟不用自己关闭,是不是你要的功能
    lrs
        19
    lrs  
       231 天前   ❤️ 2
    我前一阵做了一个自用的定点报时的 APP, 也是到后台就没反应了. 后来放弃了.
    alexkkaa
        20
    alexkkaa  
    OP
       231 天前
    @murmur 现在不用小米了 摔坏了。。。
    alexkkaa
        21
    alexkkaa  
    OP
       231 天前   ❤️ 2
    @kop1989 我是不做安卓开发 但是我清楚的记得以前的安卓生态有多乱 按照文档里的说法是从 api 26 开始各种限制才多了起来
    darkengine
        22
    darkengine  
       231 天前   ❤️ 8
    手机厂商:是你们 App 开发者先动手的
    stanjia
        23
    stanjia  
       231 天前   ❤️ 2
    每个 app 都后台常驻了
    那该机主是真的很不幸。
    pengtdyd
        24
    pengtdyd  
       231 天前
    买谷歌亲儿子吧
    littiefish
        25
    littiefish  
       231 天前 via iPhone
    ???这是好事
    kujio
        26
    kujio  
       231 天前   ❤️ 1
    同安卓开发岗,表示但凡给 APP 一点机会,新的保活机制就会出现。
    而且后台通过广播拉起在好多年前国内就没用了,
    同样监听网络状态功能,现在要用好几种方式同时使用才能保证在大部分机型里能正常运行。
    Chinsung
        27
    Chinsung  
       231 天前   ❤️ 6
    说到底,还是头部大厂吃相难看。
    没本事把系统搞好去卷死外国人,自己一群人五花八门在国内卷,恶心的还是用户
    stoneabc
        28
    stoneabc  
       231 天前
    为数不多的赞同手机厂商的做法。就是该杀。
    xmlf
        29
    xmlf  
       231 天前 via Android
    看来还是三星手机系统好用
    sagaxu
        30
    sagaxu  
       231 天前 via Android
    有专门做保活 sdk 的人,闷声发财
    shyling
        31
    shyling  
       231 天前
    个人觉得是挺傻逼的。。

    主要还没个统一的规范。

    想写个 Android app ,Android 开发工程师还不够,得是什么“华为手机 app 开发工程师”,“oppo 手机 app 开发工程师”。。
    kop1989
        32
    kop1989  
       231 天前
    @shyling #31

    相对而言挺统一的。

    1 、各厂 ROM 其实都在遵循谷歌原生系统的安全规则。
    2 、缺乏统一的公共设施(比如推送,也就是 GMS )是因为正主进不来,各厂必然会八仙过海。
    3 、Android 内核是开源的,各厂的系统都是 ROM 的,有些许功能呈现方式不同是很正常的现像。

    各厂的不同,更大程度上是 app 在商业和营销上的不同。

    如果非要比较的话,CentOS 、Ubuntu 、Debian 也有各自的不同,这很正常。
    abvatous
        33
    abvatous  
       231 天前
    OP 如果真的需要
    把 app os api 调低点(不高于 9.0 即可),然后用组合拳保活吧(servcei+Thread)

    用巧计保活,我都感觉罪恶
    cssk
        34
    cssk  
       231 天前 via iPhone   ❤️ 2
    把安卓两字去掉一样适用
    WeiYuanStudio
        35
    WeiYuanStudio  
       231 天前
    我之前写了个收短信送到 iPhone 的,也是注册广播莫名其妙被杀就放弃了。有时候能行,有时候又不行,真的是佛了
    Zien
        36
    Zien  
       231 天前
    这大概是中国人的宿命吧
    gearkey
        37
    gearkey  
       231 天前 via Android
    根源:社会制度(无意义),那就是 Android 的碎片化和监管不足吧,不管 Google 怎么加强权限控制,国内的厂商总会有一些奇思妙想
    gam2046
        38
    gam2046  
       231 天前
    尝试启动一个前台服务,既然是自用程序,占用一下通知栏,应该是可以接受的。
    VYSE
        39
    VYSE  
       231 天前
    然而原生 Android 又压不住国内的 APP, 环境所致
    ochatokori
        40
    ochatokori  
       231 天前 via Android
    miui 给自启权限就能被广播唤醒了
    SuperMild
        41
    SuperMild  
       231 天前
    一个参考:Windows 曾经也病毒横行,各种恶意软件,留后门,开机启动,无法卸载等等,都曾泛滥过!

    直到台式机推出主舞台,而笔记本通常预装了正版,并且 Windows 官方自带杀毒软件之后,情况才有所改善。

    安卓与 Windows 的情况很像,就是很自由,软件的权限很大,因此会出现类似的情况。
    makelove
        42
    makelove  
       231 天前
    大部分人说 android 不行因为程序乱占后台不行,这又是不让占后台不行,正反不是人
    MIUI 不是有个允许指定 App 后台运行的设置,不起作用吗
    xingda920813
        43
    xingda920813  
       231 天前
    同意 gam2046 ,前台服务好使。我写的小 app (每隔 15 分钟请求一个 API )启动前台服务,只要在手机管家里对这个 app 自启动、关联启动、后台运行什么的全部允许,连续几天都可以正常运行。
    xingda920813
        44
    xingda920813  
       231 天前   ❤️ 1
    后台管理上我更赞同国内 Android ROM 和 iOS 的做法,即严格限制后台,包括上滑卡片时使用 force stop (push 靠厂商推送的系统级通道解决,类似苹果 APNS),而不是 Google 的做法。
    geniussoft
        45
    geniussoft  
       231 天前
    1. 没有 Google 管
    2. GOV 也不管
    3. 消费者随便欺负,完全不知道抗争
    xtinput
        46
    xtinput  
       231 天前
    @xingda920813 苹果也是有后台常驻应用的,看应用类型
    adoal
        47
    adoal  
       231 天前 via iPhone   ❤️ 1
    国内这个安卓是阉卓
    makelove
        48
    makelove  
       231 天前
    @adoal 别迷信 Google,阉卓是更合理的做法,不要把权力交给 App,有作恶的能力肯定会作恶。 默认不能后台,可以手动放行 App 才是理性设计。
    zjm947373
        49
    zjm947373  
       231 天前   ❤️ 2
    杀了又说不好用,不杀又说费电卡机在后台偷听😅真难伺候
    本来就是小众要求,要用自己刷一个不就得了
    geshenjibigmail
        50
    geshenjibigmail  
       231 天前
    @kujio 我还可以保活
    geshenjibigmail
        51
    geshenjibigmail  
       231 天前
    现在还可以保活的
    Cu635
        52
    Cu635  
       231 天前
    “安卓端真的是环境比 pc 桌面还恶劣”
    因为移动端实际上是从硬件到软件都是封闭的环境。

    @zmqiang
    移动端事实上是从硬件到软件的封闭环境,并不是“开源”。
    Cu635
        53
    Cu635  
       231 天前
    @zmqiang
    移动端事实上是从硬件到软件的封闭环境,并不是真正的“开源”。
    ccming
        54
    ccming  
       231 天前
    把安卓两个字去掉
    Ackvincent
        55
    Ackvincent  
       231 天前
    你可以用原生态的安卓哇 爽的一批
    noahhhh
        56
    noahhhh  
       231 天前 via Android
    @VYSE 原生 Android 10 以后就压得住了
    alexkkaa
        57
    alexkkaa  
    OP
       231 天前 via Android
    @xingda920813 就是前台服务 占用任务栏的
    cocolate
        58
    cocolate  
       231 天前
    产品策划老板的大数据需求 -> 程序员各种找漏洞常驻后台 & 缺乏谷歌应用监管 -> 用户手机里养蛊,手机系统厂商与 app 开发商开始攻防 -> 用户遭殃

    直接责任是各大 app 贪得无厌死命驻后台收集数据
    次要责任是谷歌 play 被墙,国内应用平台无需为安卓环境负责,手机厂商又没有谷歌那么强
    Donahue
        59
    Donahue  
       231 天前
    @noahhhh
    @Ackvincent
    原生安卓 11 用着怎么样,毒瘤软件压得住吗,手持红米 k20pro 感觉系统有点卡,想刷到 lineagos
    flynaj
        60
    flynaj  
       231 天前 via Android
    小米可以设置,由用户决定能不能后台运行。
    设置方法在手机管家的后台运行里面。我的 task 一种运行从来没有停止过
    holinhot
        61
    holinhot  
       231 天前
    正常的,除了白名单应用,其他连推送都收不到
    zxcslove
        62
    zxcslove  
       230 天前
    根源在于下沉群体庞大,给了权限很难说不被用来对付普通小白用户,干脆不是普罗大众需求的直接一刀切。

    新网民群体庞大这个现状是考虑很多问题的大前提
    kujio
        63
    kujio  
       230 天前
    @xiao109 人家这是反向保活(手机商主动保活),其他人学不来
    murmur
        64
    murmur  
       230 天前
    @zxcslove 但是国产 ui 已经卷疯了,你想不到的需求都别人做了,如果这玩意一没做,二没给你开出来,你得考虑是不是合理
    tankren
        65
    tankren  
       230 天前
    你用 pixel 手机看看能不能复现
    kimgo110
        66
    kimgo110  
       230 天前 via Android
    知道什么是劣币驱逐良币了吧?
    GiantHard
        67
    GiantHard  
       230 天前
    MIUI 的话,多任务加锁、允许自启动、省电策略不限制,就能保持应用在后台运行了。如果不想要某个软件在后台运行,把自启动关掉就行,所谓的自启动白名单只是应用的默认“自启动”设置是允许。
    ily433664
        68
    ily433664  
       230 天前
    还不是 app 逼的,现在开始喊冤了?
    jsjjdzg
        69
    jsjjdzg  
       230 天前
    全靠 APP 自我管理,那 安卓更没法用了,乱成一锅粥
    shengyueming
        70
    shengyueming  
       230 天前
    难道只有安卓恶劣,手动狗头
    abcbuzhiming
        71
    abcbuzhiming  
       230 天前   ❤️ 5
    @alexkkaa 笑话,注册一个一直在转的广播,然后说这玩意不耗电。。。

    这就是我之前说的,国内新生代前端(甭管是 web ,PC 客户端,还是移动端),普遍的,不是一两个人,都不知道自己干的事情,对用户的设备意味着什么。一个二个都不把用户的设备当人——我就是要常驻后台,至于你用户爽不爽,关我屁事,现在觉得安卓抓的严?之前那些开发者搞各种骚操作常驻后台,让消费者叫苦不迭的时候。消费者说国内安卓 app 是地狱,苹果大法好,搞死这帮喜欢驻留后台的傻 xApp 的时候,你没看见是吗?
    lisongeee
        72
    lisongeee  
       230 天前
    你得手动在系统里允许 app 后台使用电量,还得在任务视图锁定,然后常驻通知栏就行
    daliusu
        73
    daliusu  
       230 天前
    我的 oppo 我发现那个你设置的不优化,保持后台啥的都是摆设,照样杀后台。但是只要插上充电器就不杀了
    psklf
        74
    psklf  
       230 天前
    挺好的,感觉 op 写得软件是流氓软件。
    alexkkaa
        75
    alexkkaa  
    OP
       230 天前
    @abcbuzhiming 我不是开发安卓的 我理解的广播就是系统有 event 就通知 hook 的程序 这玩意有什么耗电的? 我的程序进入后台后什么都不做 不像那些毒瘤后台疯狂搞小动作。照你的说法系统自带的短信程序岂不是耗电大户?
    ShadowPower
        76
    ShadowPower  
       230 天前
    在原生 Android 10 及以上的版本,要想实现后台执行任务,需要做到这些:
    创建后台服务: https://developer.android.com/training/run-background-service/create-service?hl=zh-cn
    创建常驻通知: https://developer.android.com/reference/android/app/Notification.Builder#setOngoing(boolean)
    设置里找到电池优化,关闭指定应用的电池优化功能

    否则在原生 Android 上都会被干掉,第三方 ROM 就更不用说了……
    zxcslove
        77
    zxcslove  
       230 天前
    @murmur 对,我赞同这个观点,少数用户的需求很难被人考虑,如果是对庞大的小白用户群体产生了困扰或者风险,那就绝对不会被考虑。
    abcbuzhiming
        78
    abcbuzhiming  
       230 天前   ❤️ 5
    @alexkkaa 我不知道你是开发什么的。不过你的言行证明了我的那个判断:

    [普遍的,不是一两个人,都不知道自己干的事情,对用户的设备意味着什么。]

    不就是个 hook(钩子)吗,不就是个事件通知吗?这怎么就耗电了呢?用户怎么就不理解呢?

    那我就要说了,用户就 TM 该被注册这个 hook 啊?你问过用户的意见了没有?你觉得,那些毒瘤疯狂搞事,我这就是个 hook ,所以不应该被这么对待是吗?你觉得系统里还有更多费电的垃圾程序,所以我的 hook 就没啥问题对吗?

    你去别人家偷 100w 叫偷,偷 1 块就不叫偷了吗?对与错是性质问题,不是数量级问题,你先搞清楚这点

    我懒得和你这样的人辩论,因为你这样的人我见太多了,这是个程序员红利时代,大把新出的技术框架大大降低了编程难度,程序员写的爽就行了,至于用户怎么想,关我屁事,这样的人满坑满谷,你不是第一个,也不是最后一个。

    至于国内安卓的环境不好,我觉得是还不够好,但是至少比前几年各种 app 疯狂驻留后台要好的多了,希望加大力度。顺便说一下,你以为国外安卓就好? google 是几年一直在围追堵截各种要权限的,私自驻留的。为啥?流氓开发者太多了,给点阳光就灿烂。
    lear7
        79
    lear7  
       230 天前
    感觉楼主站在了 v 友的对立面,这里好多人都是黑阈冰箱用户好吗,好多安卓用户巴不得所有后台应用被秒杀。
    zooeymango
        80
    zooeymango  
       230 天前
    安卓的监管就是个难题啊,公说公有理婆说婆有理,小白用户跟深度用户的需求也有矛盾,正常软件和流氓软件的区分太难定义了
    cigarzh
        81
    cigarzh  
       230 天前
    smilenceX
        82
    smilenceX  
       230 天前 via Android
    由用户设置的白名单机制其实也是鸡肋,想想那些不给权限就不让用的 app 就知道了。
    App:你不给我白名单是吧?我前台退出后台偷着跑
    qqg1530
        83
    qqg1530  
       230 天前 via Android
    完全不在意,刷机灭霸整起来
    jeepc
        84
    jeepc  
       230 天前
    骂 android 毒瘤 app 多的还是你们这群人
    calloc
        85
    calloc  
       230 天前 via iPhone
    那种流氓权限确实得管,但是 Android 越来越严格的权限导致 app 感知能力也变弱了,像 magiskhide 这种功能根本没法完美检测,app 如同楚门一样活在别人给的世界中。
    neptuno
        86
    neptuno  
       230 天前
    有没有可能是你写的程序有问题
    hideonwhere
        87
    hideonwhere  
       230 天前
    @66beta 这个好像都说了挺久的吧 我看了下还是内测状态 都没法注册
    MX123
        88
    MX123  
       230 天前
    @66beta 链接都发出来了,自己怎么都不看看呢?目前注册还需要邀请码!
    tangzekk
        89
    tangzekk  
       230 天前
    标题党,vivo 的问题推到安卓怎么不说是中国的问题,一天天憋着想搞大新闻勾搭回复,你啊奶舞
    loopq
        91
    loopq  
       230 天前
    我寻思这个限制不是挺好的吗? 权限随便给,后台随便驻估计会骂的更凶吧。
    如果是开发者确实有这个需求,有很多种方法实现前台常驻。
    早些年才是地狱一样的开发,现在官方脚手架完善,规则明确,监管严格,对于开发者和普通用户不是好得多吗? 当时学 Android 的时候随便写个啥 App 就能上应用商店 应用才是五花八门 经常下个应用就能检测到病毒或者不安全
    noahhhh
        92
    noahhhh  
       230 天前 via Android
    @Donahue 可以设置电池限制后台,我手头 app 都正常。刷原生建议看下别人评价,稳定性可能不如 MIUI ,具体要看开发者,第三方 ROM 是给老机器续命或者折腾用的。
    noahhhh
        93
    noahhhh  
       230 天前 via Android
    楼主不如源码发一下
    LongYard
        94
    LongYard  
       229 天前
    我在高铁上看见旁边一个老年人,年龄估计 50 左右,和他朋友发一个语音微信中间弹出来好几个垃圾广告(电池管理,购物相关),真的是很恶心。
    laozhoubuluo
        95
    laozhoubuluo  
       229 天前
    没有节操?现在系统开发已经很克制了,要想知道有一段时间最终用户已经被 APP 乱搞到要求厂商必须做划卡杀后台了(只要用户在最近应用里划掉 APP 就永久停止后台服务)。
    CodeGou
        96
    CodeGou  
       228 天前
    乱世用重典,没毛病。google 被禁,没人能协调各厂家利益,来代替 Google 的角色。就推送这个功能,一年增加多少碳排放,统一推送联盟这个技术上毫无难度的事情,对用户利大于弊的事情,能推这么多年毫无实际进展,除了厂商配合度低,还能有什么原因。而且随着 Android 应用生态恶劣,手机很快就开始卡慢,加快换机周期,也符合手机厂商的利益。无解~
    zhaomingzhe
        97
    zhaomingzhe  
       228 天前 via Android
    没有解决方案,只有权衡取舍
    VinsonGuo
        98
    VinsonGuo  
       228 天前 via Android
    iOS 也允许第三方 app 这样搞吗?
    DeleteZN
        99
    DeleteZN  
       228 天前
    我最近买了新的手机,旧的荣耀 20 准备废物利用一下。
    一开始想连上硬盘,搞个 FTP server ,结果后台大约 10 分钟左右就会被杀

    后来想自己搞一下 Ubuntu Touch 试试,现在华为手机解锁不了 BL 码,root 都搞不定。真的服了。
    辣鸡华为一生黑
    bsfmig
        100
    bsfmig  
       227 天前 via Android
    @calloc “app 如同楚门一样活在别人给的世界中。”
    设备是用户的,app 活在别人(用户)给的世界中,本来就是理所当然的。你为这个感到不满,反而应该是不可思议乃至批评的。
    1  2  
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1152 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 19:55 · PVG 03:55 · LAX 12:55 · JFK 15:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.