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

React Native(Expo)集成react-native-purchases报错:There was a problem with the store

问题描述

基于Expo React Native(0.72.4)开发应用,集成react-native-purchases(^6.6.4)调用RevenueCat的Purchases.getOfferings()时,抛出错误:[Error: There was a problem with the store.],已确认Android API Key配置正确。

调用代码如下:

try {
    Purchases.setLogLevel(Purchases.LOG_LEVEL.DEBUG);

    if (Platform.OS === "ios") {
    } else if (Platform.OS === "android") {
      Purchases.configure({ apiKey: "goog_api-key" });
    }

    try {
      const offerings = await Purchases.getOfferings();
      console.log(offerings);
    } catch (e) {
      console.log(e);
    }
} catch (e) {
    console.log(e);
}
排查与解决建议
  • 检查Google Play Billing权限:确保Expo项目配置了com.android.vending.BILLING权限。Managed workflow需在app.json的android.permissions数组中添加该权限;Bare workflow则要在AndroidManifest.xml中手动声明。
  • 验证产品与Offerings配置:登录RevenueCat后台,确认Android平台的产品SKU已正确关联到Offerings,且产品状态为活跃。同时检查Google Play Console中对应产品已创建并发布(至少处于可测试状态)。
  • 确认测试账号与环境:
    • 使用Google Play授权的测试账号,普通账号无法访问未发布的内购产品。
    • 真机测试时,确保设备登录测试账号,且未安装过该应用的非测试版本。
  • 分析DEBUG日志:已开启DEBUG级别日志,仔细查看控制台输出的RevenueCat详细日志,尤其是getOfferings()调用前后的请求/响应内容,日志通常会包含具体错误原因(如产品未找到、权限不足等)。
  • 检查网络连接:确保测试设备网络正常,RevenueCat需要连接自身服务器和Google Play Billing服务,网络波动或代理可能导致请求失败。
  • 验证版本兼容性:确认react-native-purchases(6.6.4)与Expo 0.72.4的兼容性,可尝试升级到该包的最新兼容版本,或回退到稳定版本测试。
  • 调整配置时机:将Purchases.configure()移到应用启动初期执行(比如组件的useEffect无依赖项中),确保初始化完成后再调用getOfferings()。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 15:57:07