Remax 推送,
统一接入。
FCM、设备解锁与后台触发,共用一套频控与通知渲染。通过 PushCore,接入你的业务条件、内容与交互。
0.3.1 · 仅核心:标准解析与推送;两个库:增加在线读取、解密和渠道选择。
最新发布
v0.3.1com.android.common:push-core:0.3.1com.android.common:push-config-remax:0.3.1最简开发流程
先定义配置,再接业务判断、UI 与埋点。
- 01
确定三份配置,本地兜底,在线按需覆盖
push_global_config配全局频限;push_policy_config配类型、顺序和业务规则;push_content_config配文案。去配置与下载 JSON放到本地在下方控制台配置并下载 JSON,放入业务 assets,启动时解析并安装到 Core。策略若有 natural / paid 外层,先由适配库选择渠道。
放到远端把三份 JSON 分别填入 Firebase 同名参数。PushConfigRemax 读取、解密并返回解析结果;业务校验后应用,失败保留上次正确配置,最终兜底本地。
- 02
初始化一次,按 typeId 注册业务
配置通知渠道和图标,为每个类型注册
PushHandler,在 Application 中用本地默认构建PushPlan并调用PushCore.install。在线配置由业务更新到 Core;缓存也由业务保存。 - 03
rules 判断能否发,destination 决定去哪
在
intercept中读取该类型的rules,结合登录、签到等业务状态返回 Allow / Reject。业务将destination映射为落地页,并把所需参数放入点击 Intent。rules.requireNotCheckedInToday = true→ 未签到才放行destination = "tasks"→ 业务打开任务页 - 04
选择文案,绑定自己的通知 UI
业务提供语言、变体和占位符参数,Core 解析文案后通过
candidate.content交给render。将标题、正文、按钮绑定到小布局、大布局、悬挂布局;模板和图片由业务映射。 - 05
统一监听事件,接上业务埋点
解析前设置
PushCore.setEventListener:PushDispatchEvent用于发送、跳过、点击等事件;PushConfigEvent用于配置错误。落地 Activity 调用consumeOpenIntent后继续业务路由,同一次事件只上报一次。
Core 接管:已启用来源的触发调度、首次安装等待期、全局 → 分组 → 类型频控、去重、每次最多一条和通知发布。
按需补充:通知权限引导、FCM / Token 上报、周期触发或已有前台服务计时。业务规则、页面跳转、UI、缓存与埋点由宿主负责。
配置一条,恰好的提醒。
三个在线参数 · 表单配置与校验 · 实时文案预览
普通可选输入项清空会移除字段;列表留空会输出 [];开关选择「默认」会省略该开关。也可在「粘贴 / 编辑 JSON」中删除字段。删除字段才会采用缺省值,填写 null 不等于删除;文案显式填写空字符串也不等于省略。远端整个参数缺失/空值时,适配库返回空结果;由业务保留上次有效配置或使用本地默认。
必填字段缺失、类型或数值范围错误会提示;可选字段省略时使用标注的默认值。导出前校验三份参数的类型与分组引用。自定义 rules 与业务是否允许发送,仍由宿主校验。
策略默认选择自然量;宿主将在线有效配置应用到 Core,解析失败由宿主沿用有效缓存或本地默认。新增或删除 typeId 后,需同步调整宿主注册的处理器。
代码与说明,同步阅读。
滚动代码 · 点击说明 · 双向定位
调度、频控与通知发布;策略和文案由业务提供。