ios - 如何使用 Siri 工具包扩展启用钥匙串(keychain)共享?

标签 ios keychain sirikit

我想在我的应用程序和 sirikit 扩展程序之间启用钥匙串(keychain)共享。 我为应用程序和 sirikit 添加了具有相同字符串的钥匙串(keychain)访问组。 还为具有相同字符串的两个目标添加了 App 组。 我使用 Locksmith 作为钥匙串(keychain)包装器,它也使用值为 teamID + 钥匙串(keychain)访问组 ID 的 kSecAttrAccessGroup 属性。但是当我尝试从 siri 扩展程序运行时出现以下错误:

CredStore - performQuery - Error copying matching creds.  Error=-25300, query={class = inet;
        "m_Limit" = "m_LimitAll";
        ptcl = htps;
        "r_Attributes" = 1;
        srvr = "appurl.com";
        sync = syna;
    }

任何指导表示赞赏。谢谢

最佳答案

它不起作用的原因是应用程序和 siri 扩展使用的配置文件中的 TeamID 或 AppIdentifierPrefix 不同。当我们使用钥匙串(keychain)访问组时,如果您检查权利,钥匙串(keychain)访问组的前缀是 AppIdentifierPrefix,它是您帐户附带的 TeamID 或 AppID:

<key>keychain-access-groups</key>
<array>
    <string>$(AppIdentifierPrefix)common_keychain_access_group_string</string>
</array>

并且这个 AppIdentifierPrefix 对于应用程序和 sirikit 必须相同。 谢谢

关于ios - 如何使用 Siri 工具包扩展启用钥匙串(keychain)共享?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51163065/

相关文章:

ios - Stripe 和 Parse SDK 用于存储信用卡

iphone - Xcode 4 - clang 错误

ios - 自定义高度未应用于 UITableView 原型(prototype)单元格

iphone - 使用 KeychainItemWrapper 时出现问题

ios - Siri Kit(语音转文本)禁用我的 TTS(文本转语音)iOS

ios - SiriKit 的局限性?

ios - Adobe air 的 In App Purchase ANE 是否成功?

macos - OS X 钥匙串(keychain)编程资源

钥匙串(keychain)中的 ios IDFV 商店

ios - 如果从 Siri 快捷方式执行操作,我应该捐赠交互吗?