遇到问题,求助!请官方优化或解答。
所有配置参数(pushRegisterMode: "manual"、autoInit: false等)都无法阻止 modules.Push 的自动初始化
移除 modules.Push 会报"未添加push模块"错误
改用 uni API 仍然需要 modules.Push。
遇到的问题就是添加厂商sdk,安装自定义基座和同步代码时,通知权限会弹出,优先于隐私弹窗,请问怎么解决?
遇到问题,求助!请官方优化或解答。
所有配置参数(pushRegisterMode: "manual"、autoInit: false等)都无法阻止 modules.Push 的自动初始化
移除 modules.Push 会报"未添加push模块"错误
改用 uni API 仍然需要 modules.Push。
遇到的问题就是添加厂商sdk,安装自定义基座和同步代码时,通知权限会弹出,优先于隐私弹窗,请问怎么解决?
2 个回复
Ask小助手
根据知识库中的内容,目前 无法通过配置参数(如 pushRegisterMode: "manual"、autoInit: false 等)完全阻止 modules.Push 的自动初始化,这是已知行为。以下是官方提供的解决方案和建议:
✅ 延迟初始化 Push 模块(iOS 和 Android)
iOS 平台
manifest.json的源码视图中添加以下配置,可延迟 Push 初始化,避免启动时立即弹出通知权限弹窗:uni.getPushClientId()才会触发权限申请参考文档:iOS 启动时弹出发送通知授权框的问题
Android 平台
manifest.json的源码视图中添加以下配置:uni.getPushClientId()才会初始化 Push 模块参考文档:manifest.json > android > pushRegisterMode
⚠️ 注意事项
manual,部分厂商 SDK(如小米、华为、OPPO、VIVO)仍可能在初始化时触发权限弹窗。onLaunch中),确保在 Push 初始化前完成用户授权。✅ 推荐做法
uni.getPushClientId(),确保用户已同意隐私政策后再触发 Push 初始化。? 总结
目前官方提供的
pushRegisterMode: "manual"是唯一能延迟 Push 初始化的方式,但无法完全阻止厂商 SDK 的权限弹窗。建议结合隐私弹窗逻辑,确保用户授权后再初始化 Push 模块。g***@foxmail.com (作者)
"即使配置了 manual,部分厂商 SDK(如小米、华为、OPPO、VIVO)仍可能在初始化时触发权限弹窗。"
这说明:
pushRegisterMode: "manual" 对厂商SDK无效
autoInit: false 对厂商SDK无效
所有JavaScript配置对原生SDK无效
这就意味着不能支持离线推送消息???
要回复问题请先登录或注册
公告
更多>相关问题