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

React Native分享扩展中SharedGroupPreferences.getItem始终返回error 1

解决React Native分享扩展无法读取Shared Group数据返回error 1的问题

排查与解决步骤

1. 确认分享扩展的App Groups配置完整

  • 主应用和分享扩展的target都需要在Xcode的Signing & Capabilities中添加并勾选group.com.projectName,确保两者的App Groups列表完全一致,无拼写、大小写错误。

2. 验证Shared Group标识符完全匹配

  • 检查主应用和分享扩展代码中使用的group.com.projectName是否完全一致,包括空格、标点符号,避免因标识符不匹配导致无法访问。

3. 确保原生依赖正确集成

  • 重新执行pod安装,保证依赖代码同步到分享扩展target:
    cd ios && pod install && cd ..
    
  • 清理Xcode缓存并重启:
    执行Product > Clean Build Folder,重启Xcode后先运行主应用,再测试分享扩展。
  • 检查分享扩展的Info.plist,确认App Groups数组中包含group.com.projectName。

4. 确认数据已成功写入

  • 在主应用中调用getItem验证userDetail已成功存储到Shared Group后,再测试分享扩展,避免数据未完成持久化时进行读取。

5. 检查开发者账号与App ID配置

  • 确保开发者后台已创建group.com.projectName这个App Group,且主应用和分享扩展的App ID都关联了该Group。
  • 主应用和分享扩展的Bundle Identifier需符合App Groups命名规则(Group标识符必须以group.开头)。

6. 原生代码验证(排除RN封装问题)

如果以上步骤无效,可通过iOS原生代码测试读取,判断问题是否出在RN层:

if let userDefaults = UserDefaults(suiteName: "group.com.projectName") {
    if let userDetail = userDefaults.string(forKey: "userDetail") {
        print("获取到数据:\(userDetail)")
    } else {
        print("未找到数据")
    }
} else {
    print("无法访问Shared Group")
}
  • 若原生代码能读取,需排查react-native-shared-group-preferences的集成问题;若原生也无法读取,继续检查iOS系统级配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 05:36:09