跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 未运行的 app 是如何做到推送消息的?
未分類
26 8 月 2020

未运行的 app 是如何做到推送消息的?

未运行的 app 是如何做到推送消息的?

資深大佬 : cantonadong 13

一个资讯 app,没有运行(包括后台进程,是如何做到推送消息的?好神奇

大佬有話說 (35)

  • 資深大佬 : SakuraOjosama

    统一推送或者。。。小米推送?

  • 資深大佬 : werls

    系统推送啊,苹果和 Google 玩了好几年了

  • 資深大佬 : yufeng0681

    一种情况是:走中国几家统一了的推送功能;
    一种情况是:后台自己启动(被人拉起来),然后主动获取通知消息,然后在后台自杀

  • 資深大佬 : belin520

    @yufeng0681 上正解

  • 資深大佬 : wanwaneryide

    感觉你在钓鱼

  • 資深大佬 : cdlnls

    系统级别的推送啊,简单说就是 APP 后端直接给手机厂家的推送服务器发送消息,然后手机厂家再转发给手机。
    如果 APP 是在运行中,就可以直接发给手机 APP 。

  • 資深大佬 : HarryQu

    使用手机厂商的推送:
    iOS:APNs 。
    安卓:各大手机厂商各有一套推送的 SDK,例如小米推送 SDK 、华为 推送 SDK 、OPPO 、VIVO 推送 SDK 。

  • 資深大佬 : whywhywhy

    以前我也不能理解,认为消息要自己的 APP 发出来。

    现在都是系统自带推送程序,你调用它的 API 就可以做到,看起来是 APP 发出来的,其实是系统发出来的

  • 資深大佬 : feidao158

    @whywhywhy 调用 api 需要代码程序,代码程序需要运行,看题主问题 没有运行的 app

  • 資深大佬 : fuchunliu

    @yufeng0681 好不容易都爬起来了还会自杀?有这么良心?

  • 資深大佬 : zhuawadao

    借问:抖音如何在安装之后不打开的情况下,直接就有一个角标(无耻)

  • 資深大佬 : dddd1919

    这种问题直接问百度就好了

  • 資深大佬 : ochatokori

    @fuchunliu #10 因为有不少 app 在后台也没事干,没必要占着后台被人骂毒瘤,只有微信不知道搞什么飞机要在后台占 1G 内存
    当然也不排除是系统资源紧张,应用被唤醒后就被系统杀了

  • 資深大佬 : whywhywhy

    @feidao158
    我不是很清楚安卓苹果具体的实现,但是其实上已经说得很清楚了。。

    比如小米手机,,,你是程序开发者,去小米官方注册一个推送消息的 ID,然后把这个 ID 写到你的程序里,你的程序被用户安装后,小米主动或被动的方式通知你的服务器“有一个新用户安装了你的 APP,它的唯一 ID 是 XXXXXX”,然后你在你的服务器,通过小米的 API,也许是 HTTP 协议,也许是其他协议,发送一个请求给小米的服务器,服务器再根据用户 ID 推送到指定的用户,然后被推送的消息,就会呈现在用户的手机上了。。。。

    被推送的消息很容易让用户以为是 APP 运行过程中调用了系统 API 来推送消息,其实全程不需要 APP 在用户手机上运行,只要安装就可以了。

    以上只是我根据自己使用手机,猜测的逻辑,具体各厂商的逻辑,我不清楚,完全没去了解这一块。。。也许需要用户至少打开过一次 APP,也许根本不需要,具体的限制就要去看文档了。。。。。。

    还有一种就是上说的,互相唤起对方的 APP,然后发推送消息,然后自己退出。这种方式超级低效,用户手机性能影响大。。

  • 資深大佬 : fffang

    @zhuawadao 抖音后台通过苹果接口 告诉这台设备的这个 app 要显示一个角标

  • 資深大佬 : zhuawadao

    @fffang 安卓上的,也是统一推送做的?安装的的时候通过应用市场做的接口调用吗,辛苦答疑!

  • 資深大佬 : Baymaxbowen

    @zhuawadao #16 手机厂商的推送,和应用市场无关

  • 資深大佬 : iFlicker

    iOS: apns
    Android:国外是 fcm 国内是各个系统的推送 sdk

  • 資深大佬 : Tink

    统一推送联盟啊

  • 資深大佬 : whatyousay

    安卓的唤醒后推送是备用手段?要不然为啥要那么多互相唤醒?

  • 資深大佬 : Tink

    @feidao158 每个系统都有推送到 sdk

  • 資深大佬 : guanhui07

    我理解是 手机系统级别的推送

  • 資深大佬 : Sapp

    @feidao158 是后端调用的吧,厂商收到这个转发给手机,手机系统再通知

  • 資深大佬 : swulling

    @feidao158 其实并不需要客户端,也就是 APP 运行。APP 的服务端调推送接口就行了。

  • 資深大佬 : nekochyan

    大部分都是走系统级别的推送吧,比如谷歌的 FCM,小部分流氓应用就是后台自己启动

  • 資深大佬 : Cielsky

    @zhuawadao 国内有统一推送联盟的,发展几年了

  • 資深大佬 : BlackwithBrown

    根据机型有推送 sdk 的 连 chrome 和 firefox 也有推送接口…..

  • 資深大佬 : xiaoliu926

    @Cielsky 难产几年了,还没推出来。

    我是做 android 开发的。一般 android app 会同时集成好几家推送服务,比如 友盟推送.极光推送.小米推送 .华为推送.魅族推送.ov 推送。
    1.app 打开状态,走的是第三方推送,比如友盟推送
    2.app 杀死了或者 app 未启动状态,走厂商通道推送。小米手机走小米推送,华为手机走华为推送。

    厂商推送服务是集成在系统中一直在运行状态的。app 未运行时,后台把推送信息发给厂商推送服务器,厂商再把推送信息推送给安装了 app 的手机上。厂商推送服务跟 app 是否运行没关系,系统级别的。app 运不运行,系统推送服务就在那里一直默默活着,除非你手机关机。

  • 資深大佬 : ershierdu

    iOS 不架梯子也能正常收到 Gmail 、telegram 的推送,所以显然是通 iOS 的 API 推的

  • 資深大佬 : mike881207

    爲啥我的小米 10 在設置裏把微信自啓給關了 然後就收不到消息了? MIUI12

  • 資深大佬 : Xusually

    @feidao158 app 的服务器调接口往手机厂商推送服务推送就行了,不需要 app 启动。

  • 資深大佬 : RobertLyu

    @mike881207 因为张小龙不想让 OEM 厂商教微信做推送。

  • 資深大佬 : dcty

    @feidao158 如果你用 MIUI,开发者有接入 MIPush,那么可以做到无需后台即可推送。其他厂商的同理。

  • 資深大佬 : fansangg

    @xiaoliu926

    兄弟,你多久没做推送了,友盟推送已经包含了华为小米 ov 的推送了….

  • 資深大佬 : maplelin

    @fffang #15 iOS 不打开是默认没有开启通知权限的,不可能做到不打开就显示角标

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具