【问题标题】:Is it possible to renew provisioning profiles without needing to upgrade iOS enterprise apps?是否可以在无需升级 iOS 企业应用程序的情况下更新配置文件?
【发布时间】:2015-07-27 14:44:23
【问题描述】:

新生成的配置文件似乎不再与同一应用的旧版本兼容。新应用程序确实适用于新配置文件,但我们不想升级所有链接到旧版本后端并且并非全部与最新应用程序兼容的应用程序。我们确实需要尽快更新配置文件以保持旧应用程序正常运行。我们以前也这样做过,但现在我们遇到了以下问题。

使用更新的配置文件打开应用程序时,它会在控制台日志中显示以下消息失败:

entitlement 'com.apple.developer.team-identifier' has value not permitted by provisioning profile 'My Profile'

检查配置文件时,发现包含团队标识符的数组现在不再是数组,而是单个元素。

以前的配置文件:

<key>com.apple.developer.team-identifier</key>
<array>
    <string>SomeIdentifier</string>
</array>

更新的配置文件:

<key>com.apple.developer.team-identifier</key>
<string>SomeIdentifier</string>

是否可以将团队标识符添加到 iOS 配置文件?这样它就会再次变成一个数组。

在 Xcode 项目中,我能够在两个地方找到团队标识符。在 pbxproj 文件和证书中。看起来不可能在项目中为同一个目标添加任何标识符,因为它是键值对样式分配。

我还尝试破解新的配置文件并将数组标签包裹在项目周围(希望它会超出签名范围)。不幸的是,当我尝试将被黑的配置文件安装到设备时 Xcode 崩溃(可能不处理签名异常)。

任何添加标识符的方式或其他方式来获得更新的配置文件兼容将不胜感激。

【问题讨论】:

    标签: ios xcode provisioning-profile enterprise entitlements


    【解决方案1】:

    我认为没有任何方法可以按照您的方式编辑配置文件。如果有,那将是Apple 安全漏洞。

    早期,我们的Enterprise Apps 遇到了同样的问题,其中应用程序停止为我们的所有用户打开 - 问题是证书已过期。我无法像我们为AppStore Apps 那样为Enterprise Apps 即时续订。

    我必须通过Jenkins 自动创建具有更新证书的相同 IPA 并将其存储在服务器上,应用程序自动获取新的二进制文件并要求用户升级它。

    如果您能找到任何其他好方法 - 我会很感兴趣 :-)

    【讨论】:

    • 去年我们能够做到这一点没有任何问题。今年苹果改变了一个小事情,导致旧应用程序崩溃。我们似乎别无选择,只能忍受。幸运的是,在我们的源控制系统中找到了旧的源文件,我很高兴最新版本的 XCode 能够在不破坏任何东西的情况下构建它们(到目前为止)。这很麻烦,管理员和运营团队对解决方案不太满意。希望永久许可的日子有一天会回来。这是一个相当昂贵的笑话。感谢您花时间回答:-)
    猜你喜欢
    • 2014-07-31
    • 2021-05-22
    • 2015-04-03
    • 2012-12-31
    • 1970-01-01
    • 2014-12-02
    • 2021-01-04
    • 2012-01-26
    • 2015-01-12
    相关资源
    最近更新 更多