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

安卓上有些国际毒瘾利用 FCM 不断拉起 App 后台活动,好像没办法压?

  •  
  •   liyafe1997 · 19 天前 · 3933 次点击
    近些年的 Android 后台活动限制越来越厉害,不说国产安卓那种直接用“强制停止”机制,彻底压死 App 完全没有任何后台活动的机会。哪怕原生安卓,近几年也限得越来越死,从 Android8 开始,后台 Service 就只有几分钟的活动时间了,Broadcast Receiver 也不给乱搞了,Android11 还是 12 之后,JobService 也限制得越来越死,可能开个 JobService 一天也执行不了几次,再加上那个暂停执行机制,原生安卓其实普通 App 也没有太多后台乱搞的空间了。

    但是,但是,但是,FCM 推送似乎没有执行次数的限制,通过*#*#GCM#*#*能看到,SpeedTest 这个 App 存在大量 FCM 推送,平均下来几分钟到十来分钟就有一次...但是并没有弹出真的消息,怀疑就是利用 FCM 来拉后台活动。APKPure 也是,尽管它没在 GooglePlay 上架,但并不妨碍它接入 FCM 并且利用 FCM 来搞事情。

    国际版的三星还有个彻底限制后台 App 的模式,这模式有点类似国产机的压后台机制,推掉卡片之后就完全无法后台活动,别的 App 也拉不起。但是对于其它偏原生安卓的,比如 Moto ,Zenfone ,或者原生的 Pixel ,哪怕很多国内品牌的国际版系统,在无 root 的情况下,好像对这种毒瘤真的没啥办法?哪怕利用安卓原生的电池管理,把 App 设为“限制”模式,也只能压本地的 Service/JobService 这些行为,对于 FCM 似乎影响不大?
    31 条回复    2025-03-29 14:34:56 +08:00
    fang5566
        1
    fang5566  
       19 天前 via Android   ❤️ 1
    大不了冰箱冻结,speedtest 等 APP 需要什么推送呢,又不经常用。
    HK560
        2
    HK560  
       19 天前
    看到第一段我就觉得,直接小黑屋/冰箱把应用冻住不就得了
    archxm
        3
    archxm  
       19 天前
    我基本不开通知
    SilentOrFight
        4
    SilentOrFight  
       19 天前   ❤️ 3
    要是国产 App ,前 3 楼已经开喷了,呵呵
    sir283
        5
    sir283  
       19 天前 via Android
    难不成要 fcm 跟国内定制系统的 push 一样,设置个白名单?那样肯定更多人反对了。

    再说了,现在最新版本的安卓,只要不开通知权限,再把电池策略设置为限制,基本就唤醒不了了,只有系统白名单的才能唤醒,比如小而美、企鹅、pdd 这些。
    win8en
        6
    win8en  
       19 天前
    @fang5566 我始终不明白装 speedtest 有什么用途
    win8en
        7
    win8en  
       19 天前
    国产三星的深度睡眠感觉就是内置的冰箱,很牛逼。唯一的缺点就是冻结的应用没办法在 google play 更新,需要先启动一下,然后再打开 play 商店检查更新,但是三星自己的应用商店不受影响,睡眠状态也可以正常进行检查更新和更新
    liyafe1997
        8
    liyafe1997  
    OP
       19 天前
    @win8en 是的,就是内置的冰箱
    liyafe1997
        9
    liyafe1997  
    OP
       19 天前
    @HK560
    @fang5566
    @win8en
    SpeedTest 只是举个例子,说明有这种乱搞的途径
    liyafe1997
        10
    liyafe1997  
    OP
       19 天前
    @sir283 不开通知权限&电池策略设置为限制,不知道能不能压住 FCM 进来的数据消息?
    wwxwlw
        11
    wwxwlw  
       19 天前
    你可能下载错了吧, Speedtest by Ookla 在 play 商店有 https://play.google.com/store/apps/details?id=org.zwanoo.android.speedtest&hl=en_US&pli=1
    liyafe1997
        12
    liyafe1997  
    OP
       19 天前
    @wwxwlw 就是这个啊,我说的是 APKPure 不在 Play 商店里面,好好审题。
    yxmyxmyyy
        13
    yxmyxmyyy  
       19 天前
    APKPure 是某讯公司出海产品,懂的都懂
    sunnysab
        14
    sunnysab  
       18 天前
    嗯?据说小米会在锁屏后断开 FCM 的长连接,不知道真假。

    一直想找一个推送服务,程序报警等等可以第一时间给手机推送(尽量免费,又要实时),之前用某推送平台,但它被小米应用商店下架了,导致没法走小米的推送。如果可用 FCM 的话好像不错噢
    kyor0
        15
    kyor0  
       18 天前   ❤️ 2
    还有人洗国产 app ,什么劣根性
    Trigold
        16
    Trigold  
       18 天前 via Android
    @yxmyxmyyy 那就 apkmirror
    thatlazyman
        17
    thatlazyman  
       18 天前
    play 的微信收到 fcm 的广播了也不马上拉起来,导致经常延迟收到消息
    liyafe1997
        18
    liyafe1997  
    OP
       18 天前 via Android
    @Trigold 我这里其实不想针对某个 APP ,而是举个例子,说明这种流氓的可能性,毕竟有一个可以这么搞,别的都可以这么搞。
    liyafe1997
        19
    liyafe1997  
    OP
       18 天前 via Android
    @sunnysab 有的会的,fcmfix 这个 lsposed 模块其中一个作用就是修这事。
    Jason1737
        20
    Jason1737  
       17 天前 via Android
    我一般是除了 im email 类的 app 之外,其他 app 都不给通知权限的,所以手机一直没有什么广告,并且手机也 root 了用 thanox 压制 app 的自启动和后台,达到接近 iOS 的效果,目前折腾完了之后使用体验还是挺不错的
    duzhuo
        21
    duzhuo  
       17 天前
    @SilentOrFight 你说得对,但这里是 v2ex
    yafoo
        22
    yafoo  
       17 天前 via Android   ❤️ 1
    @sunnysab 试试我的 PushMe
    yafoo
        23
    yafoo  
       17 天前 via Android   ❤️ 1
    我开发的 app 需要常驻后台,以接收推送消息。

    在开发的过程中,有个思考。关于后台活动这个事,用户心累 app 开发商心力憔悴 手机制造商无奈 谷歌也是想尽各种办法反复改规则。所有人都累,那为什么就不能把后台活动的权利交给用户呢?用户想让他后台活动,就给他权限,不想让他活动,就关闭权限。这样的设计,是做不到吗还是咋回事?
    NSAgold
        24
    NSAgold  
       16 天前 via Android
    @sunnysab 小米应用商店 reminder 这个可以通过 api push 自己 支持 mipush oppopush 华为的 hms 忘了支不支持
    或者开个乌龟电信的卡 走 web api 直接免费发短信给自己(每周好像免费 28 条)
    ljl024
        25
    ljl024  
       16 天前
    @yafoo #23 这一放开,不得有一堆 App 为了保活收集数据,一打开就跟你要权限。故意不接入推送平台,不开后台就没推送,每个带必要通知的 app 都能这么玩,强迫用户做选择。
    ljl024
        26
    ljl024  
       16 天前
    Speedtest 应该是为了收集信号数据,毕竟主业( https://www.ookla.com/)是做大数据分析网络和信号的。最近还收购了一个 root metrics ,提供每个区域的活动热度数据,用来做基站部署的决策
    liyafe1997
        27
    liyafe1997  
    OP
       16 天前
    @yafoo 是交给用户的,电池那里改成无限制就是允许后台了。
    yafoo
        28
    yafoo  
       15 天前 via Android
    @ljl024 一打开 app 就索要权限,不给权限就退出,这确实是个问题,感觉解决的办法要么道德约束,要么法律约束,目前国内是出台的规定。

    就我自己而言,发现 app 接入系统推送,也有个问题。我想要的是权限给用户,微信,支付宝,还有推送软件,我给了后台权限,可以及时接收通知。而不需要及时接收通知的 app ,不给权限,就不受他的干扰。但是前些天有个烦人的 app ,就是 qq ,我不想接收他的消息,也没给他权限,但是他却不停的弹通知,感觉就是接入系统通知的问题。当然也可以直接关闭 qq 的通知权限,但问题是关了,我这会儿想打开 qq 玩一会儿,难道还得再去把通知权限开开?这是我遇到的问题,也就是为啥说把权限交给用户。
    yafoo
        29
    yafoo  
       15 天前 via Android
    @liyafe1997 嗯,目前是这样的,不过部分手机给了权限也不太好使。
    ekucn
        30
    ekucn  
       12 天前
    SpeedTest 就是这么搞的,几分钟 fcm 推送一次,

    我实在想不通,这个软件保活到底有什么用,他 fcm 也没内容。

    保活了也是活到后台,纯后台也获取不了用户信息,软件使用率也不会因为软件活着用得多

    这毕竟是个测速软件啊?
    seraph758
        31
    seraph758  
       11 天前 via Android
    @yafoo 全部交给用户,手机厂商和 app 厂家得不到实际的优惠,你就不怕他转投别家?或者另起炉灶?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1200 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 17:47 · PVG 01:47 · LAX 10:47 · JFK 13:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.