Expo React Native独立iOS应用推送通知图标仍显示Expo图标求助
针对你发布到Test Flight的Expo独立应用推送通知显示Expo图标的问题,按以下步骤排查解决:
配置iOS专属通知图标
根节点expo.notification.icon是Android平台的配置,iOS需要在ios字段下单独添加notificationIcon项,指向你的透明背景推送图标文件,示例配置如下:"ios": { // 其他原有配置... "notificationIcon": "./assets/images/ios-push-icon.png" }注意:iOS推送图标必须是透明背景的PNG文件,尺寸需符合Apple规范(建议提供20x20、29x29、40x40、58x58、80x80、114x114等多分辨率版本,或至少1024x1024的基础图标让Expo自动生成适配尺寸),且图标内容应为单色(iOS会自动适配系统主题色)。
确认图标文件有效性
检查你的推送图标是否满足要求:无背景色、内容简洁单色,避免复杂图案或非透明元素,不符合要求的图标会被iOS忽略,自动 fallback 到默认的Expo图标。重新构建并上传Test Flight
修改配置后,必须执行eas build --platform ios重新构建iOS安装包,上传到App Store Connect后替换Test Flight中的旧版本。推送图标是打包时嵌入应用的,无法通过OTA更新生效。检查推送Payload设置
若使用Expo推送服务,确保发送通知时未在payload中指定icon字段覆盖应用配置;若自行对接APNs,确认apspayload中未自定义图标路径,避免干扰应用内置的图标配置。清理设备缓存并重装
卸载设备上的Test Flight测试版本,重新从Test Flight安装最新构建的应用,避免旧版本缓存导致图标未更新。
内容的提问来源于stack exchange,提问作者VAAA

