You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SwiftUI中「撰写评价」按钮仅在开发者模式下可用问题咨询

App Store「撰写评价」按钮环境差异问题分析

问题描述

App的「撰写评价」按钮在开发者模式下可正常跳转至App Store评价页面,但在「Ready for sale(准备上架)」版本中点击后,App Store提示「无法连接到App Store」,无法正常使用。

相关代码

if let reviewURL = URL(string: "http://apps.apple.com/app/[AppName]/[AppID]?action=write-review") {
    Button(action: { UIApplication.shared.open(reviewURL) }, label: {
        HStack {
            Text("settings-button-review")
            Image(systemName: "heart.fill")
            Spacer()
        }
    })
}

差异原因

  • HTTP协议被正式环境拦截:代码中使用http协议的链接,苹果在正式上架的App环境中强制要求网络请求使用HTTPS,HTTP请求会被系统安全策略拦截,导致无法连接到App Store服务器。而开发者模式下对HTTP的限制相对宽松,因此可以正常跳转。
  • 正式环境URL验证更严格:准备上架版本对应的App可能尚未在App Store生产环境完成全量同步,或者HTTP格式的评价链接在正式环境中不被苹果的跳转逻辑认可,进而触发无法连接的提示。

修复方案

  1. 替换为HTTPS协议链接:将URL中的http改为https,符合苹果正式环境的安全要求:
if let reviewURL = URL(string: "https://apps.apple.com/app/[AppName]/[AppID]?action=write-review") {
    // 原有按钮逻辑
}
  1. 使用官方API发起评价请求:苹果推荐使用SKStoreReviewController类实现内建评价功能,无需跳转至App Store,且适配所有环境:
import StoreKit

// 在按钮点击事件中调用
SKStoreReviewController.requestReview()

内容的提问来源于stack exchange,提问作者Alexnnd

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 01:37:04