跳转至

疑难解答

消息延迟或无法收到消息

推送端设置

  • priority设置为high,即"priority": "high"
  • ttl设置为86400

接收端设置

根据推送类型及设备类型具体设置。

FCM(谷歌)

授予 NotifyMe “自启动权限”。

ColorOS/realmeUI

ColorOS 系从 Android14(版本号 700)开始对国行设备的 Google 服务框架运行做了限制,要保证消息的送达,可采用以下方法:

  • 下载电池 APP (1.2.5);

  • 清除电池 APP 数据,手机设置/应用/应用管理/电池/存储占用/清除数据

  • 安装下载的电池 APP;

  • 再次清除电池 APP 数据。

安装前后都需要清除数据。

若此处提供的电池 APP 版本过低无法安装,可下载当前系统版本对应的氧 OS(机型无需相同),提取其中的电池 APP,按此方法操作。

国行三星

国行三星在网络无法访问 Google 时,会禁用 FCM,防止一直重连导致耗电。解决方法包括:

  • 刷港版系统;
  • 切换推送类型为 极光推送
  • 安装 HMS core,切换推送类型为 HMS(华为)

若有其他解决方案,欢迎反馈。

HMS(华为)

非华为/荣耀设备使用 HMS 推送时,需要保证 HMS core 在后台正常运行,且 HMS core 能够唤醒 NotifyMe,才能保证消息送达率。具体措施(任选其一即可)包括:

  • 尽可能授予 HMS core 权限,包括但不限于:自启动权限、允许应用后台行为、关联启动权限。
  • 将 HMS core 转化为系统应用(需 root)。同样需授予上述权限。在转化为系统应用后,部分系统可能无法再设置权限,因此建议授予权限后再转化为系统应用。转化为系统应用后运行会更加稳定。
  • 使用 HMS Push 保活(需 xposed 或 lsposed 框架)。

    在非华为/荣耀设备上,NotifyMe 并不依赖 HMS Push,但若使用 HMS Push 修补了 HMS core,则同样需修补 NotifyMe,否则签名校验不通过,会导致 HMS 推送无法使用。

极光推送

第三方 ROM 需进行进行设置(授予自启动权限、后台运行无限制权限,在最近任务中将 NotifyMe 加锁),以保证应用在后台的存活率。

具体见:下文(三星)、Don't kill my app(推荐)或 SDK FAQ - 极光文档(已较长时间未更新)。

三星
OneUI6.0
  • 智能管理器/实用工具/应用程序管理/NotifyMe/后台运行 设置为不受限制。
  • 智能管理器/手机状态/内存/已排除的应用程序 添加 NotifyMe。
OneUI5.0
  • 智能管理器/实用工具/应用程序管理/NotifyMe/自动运行 设置允许。
  • 智能管理器/手机状态/内存/已排除的应用程序 添加 NotifyMe。

是否有用量限制

  • 由于各大厂商推送服务本身设有 QPS,为了保障所有用户的正常使用,NotifyMe服务器(https://notifyme-server.521933.xyz)对用户请求进行了一定限制。

    分 ip 限制和 uuid 限制。ip 限制为每个 ip 40条/2秒;uuid 限制为每个 uuid 10条/秒(可短暂突破限制,峰值50条/秒)。

    当前用量仅为试运行,后续会根据余量情况酌情调整。

    触发限制时,返回状态码为427,result值为too many request from this ip addresstoo many requests from this UUID

  • URL1、URL2、URL3(具体见进阶使用)并无限制。但也请按需使用。若发现无意义的刷接口行为,导致使用超限,影响其他用户的正常使用,会考虑关闭上述无限制的服务器。且用且珍惜!

是否支持自建服务器

暂不支持。

  • 如果有安全忧虑,可禁用 NotifyMe 的联网权限(消息接收由系统组件控制,不会受影响),在断网状态下刷新 Aes Key,使用 Aes Key 对消息标题和内容进行加密后发送(具体见进阶使用)。

    NotifyMe 不会上传用户的任何信息。对网络的使用仅包括:

    • UUID 的注册及更新;
    • OPPO 推送及魅族推送的消息取回;
    • 使用 URL 批量导入小图标;
    • 使用网络小图标时缓存图片文件。

    如果要长期禁用 NotifyMe 的联网权限,建议不要使用 UUID 发送消息(UUID 超过60天未同步会从 NotifyMe 服务器删除,以节省资源。建议使用token+pushType的方式发送),以免 UUID 失效后影响正常使用。

    NotifyMe 服务器不会存储用户的消息。(OPPO 推送和魅族推送由于不支持透传消息,如果用户选择了在 app 内保存消息内容,即reocrd不为 0 时,消息会在服务器暂时保存,app 取回消息时服务端自动删除)