weixin_43419758 2024-11-30 12:26 采纳率: 0%
浏览 39
问题最晚将于12月08日00:00点结题

App Store Connect 中设置了订阅项目,Xcode 中预览可以正确显示价格,真机测试却无法显示

问题描述:在App Store Connect 中设置了 3 个订阅项目:消耗型项目(月度/年度),非消耗型项目(终身),在 Xcode 预览时可正常显示价格,且点击订阅按钮能够触发购买弹窗,但在真机跑的时候,或发布到 testflight 中的版本,均无法正常显示价格,且无法触发购买弹窗。
怀疑是环境切换导致的问题,Xcode 预览应该是 Xcode 环境(购买弹窗左上角标题显示 Xcode),而真机测试为沙盒环境。但我在App Store Connect中已经设置了沙盒账户,并且在真机的 App Store 设置中登录了沙盒账户,问题还是存在。

补充:已附上预览截屏和真机截屏

预览中的日志(部分):

Loaded products: [{
  "attributes" : {
    "artwork" : {
      "height" : 1024,
      "url" : "",
      "width" : 1024
    },
    "description" : {
      "standard" : ""
    },
    "icuLocale" : "zh_CN@currency=CNY",
    "isFamilyShareable" : 0,
    "kind" : "Non-Consumable",
    "name" : "",
    "offerName" : "lifetime_access",
    "offers" : [
      {
        "currencyCode" : "CNY",
        "price" : "268",
        "priceFormatted" : "¥268.00"
      }
    ]
  },
  "href" : "/v1/catalog/chn/in-apps/9741B61B",
  "id" : "9741B61B",
  "type" : "in-apps"
}, {
  "attributes" : {
    "artwork" : {
      "height" : 1024,
      "url" : "",
      "width" : 1024
    },
    "description" : {
      "standard" : ""
    },
    "icuLocale" : "zh_CN@currency=CNY",
    "isFamilyShareable" : 0,
    "kind" : "Auto-Renewable Subscription",
    "name" : "",
    "offerName" : "monthly_subscription_index",
    "offers" : [
      {
        "currencyCode" : "CNY",
        "discounts" : [

        ],
        "price" : "12",
        "priceFormatted" : "¥12.00",
        "recurringSubscriptionPeriod" : "P1M"
      }
    ],

真机测试日志(部分,显示products 数组为空):

Loaded products: [{
  "attributes" : {
    "artwork" : {
      "height" : 1024,
      "url" : "",
      "width" : 1024
    },
    "description" : {
      "standard" : ""
    },
    "icuLocale" : "zh_CN@currency=CNY",
    "isFamilyShareable" : 0,
    "kind" : "Non-Consumable",
    "name" : "",
    "offerName" : "lifetime_access",
    "offers" : [
      {
        "currencyCode" : "CNY",
        "price" : "268",
        "priceFormatted" : "¥268.00"
      }
    ]
  },
  "href" : "/v1/catalog/chn/in-apps/9741B61B",
  "id" : "9741B61B",
  "type" : "in-apps"
}, {
  "attributes" : {
    "artwork" : {
      "height" : 1024,
      "url" : "",
      "width" : 1024
    },
    "description" : {
      "standard" : ""
    },
    "icuLocale" : "zh_CN@currency=CNY",
    "isFamilyShareable" : 0,
    "kind" : "Auto-Renewable Subscription",
    "name" : "",
    "offerName" : "monthly_subscription_index",
    "offers" : [
      {
        "currencyCode" : "CNY",
        "discounts" : [

        ],
        "price" : "12",
        "priceFormatted" : "¥12.00",
        "recurringSubscriptionPeriod" : "P1M"
      }
    ],

img

img

img

  • 写回答

30条回答 默认 最新

  • M_try的小尾巴 2024-11-30 12:37
    关注

    该回答引用自Deepseek,由本人整理审核 若有帮助,望采纳。

    问题分析

    根据你提供的信息,问题主要集中在以下几点:

    1. Xcode 预览与真机测试表现不一致:在 Xcode 预览中,订阅项目的价格可以正常显示,并且点击订阅按钮能够触发购买弹窗。然而,在真机测试或 TestFlight 中,价格无法显示,且无法触发购买弹窗。

    2. 日志差异:在 Xcode 预览中,日志显示 products 数组包含订阅项目的信息,而在真机测试中,products 数组为空。

    3. 环境问题:你怀疑是环境切换导致的问题,Xcode 预览使用的是 Xcode 环境,而真机测试使用的是沙盒环境。你已经在 App Store Connect 中设置了沙盒账户,并在真机的 App Store 设置中登录了沙盒账户,但问题依然存在。

    可能的原因

    1. 沙盒环境配置问题:虽然你已经设置了沙盒账户,但可能存在配置不正确的情况。例如,沙盒账户的地区设置、支付方式等可能影响订阅项目的加载。

    2. 网络问题:真机测试时,网络环境可能不稳定,导致无法正确加载订阅项目。

    3. 代码问题:在真机环境下,代码可能存在某些条件判断或逻辑错误,导致无法正确加载订阅项目。

    4. App Store Connect 配置问题:订阅项目的配置可能在 App Store Connect 中存在问题,例如订阅项目的地区限制、价格设置等。

    解决方案

    1. 检查沙盒环境配置

    确保沙盒账户的地区设置与订阅项目的地区设置一致。你可以尝试在不同的地区创建沙盒账户,看看是否能解决问题。

    2. 检查网络环境

    在真机测试时,确保网络环境稳定。你可以尝试在不同的网络环境下进行测试,看看是否能解决问题。

    3. 检查代码逻辑

    检查代码中是否有针对真机环境的特殊处理逻辑。确保在真机环境下,代码能够正确加载订阅项目。

    // 示例代码
    if let products = products {
        // 处理 products 数组
    } else {
        // 处理 products 数组为空的情况
        print("Products array is empty")
    }
    

    4. 检查 App Store Connect 配置

    确保订阅项目在 App Store Connect 中的配置正确无误。特别是检查以下几点:

    • 订阅项目的地区设置
    • 订阅项目的价格设置
    • 订阅项目的可用性设置

    5. 清除缓存

    有时候,缓存问题可能导致订阅项目无法正确加载。你可以尝试清除设备的缓存,或者重新安装应用。

    6. 查看日志

    在真机测试时,查看详细的日志信息,特别是错误日志,看看是否有更详细的错误信息可以帮助定位问题。

    总结

    通过以上步骤,你应该能够逐步排查并解决订阅项目在真机测试中无法显示价格和触发购买弹窗的问题。如果问题依然存在,建议你提供更多的日志信息或代码片段,以便进一步分析。

    评论

报告相同问题?

问题事件

  • 创建了问题 11月30日

悬赏问题

  • ¥15 zigbee终端设备入网失败
  • ¥15 金融监管系统怎么对7+4机构进行监管的
  • ¥15 硬件IIC从模式的数据发送,中断数据的接收,不能用HAL库(按照时序图)
  • ¥20 QAxWidget上显示一个word文档后,如何直接在该QAxWidget上修改和保存word文档
  • ¥15 Simulink仿真报错,请问如何解决
  • ¥20 宝塔面板无法添加Node项目,一直处于正在添加脚本页面
  • ¥50 Dkeil5 CT107D单片机的程序编写
  • ¥30 Ubuntu20.04中PVN3D复现过程交叉编译问题
  • ¥60 不懂得怎么运行下载来的代码
  • ¥15 CST导出3D模型图为什么和软件显示不一样?