尽管beta权利标志是配置文件的一部分,但Xamarin iOS应用程序“不包含正确的beta权利”

时间:2015-01-27 18:33:18

标签: ios xamarin.ios xamarin

由于最初的TestFlight应用程序将在一个月内退役,我正试图掌握iTunes Connect Beta系统,这看起来是一项重大改进。按照指示,我重新生成了配置文件,并在我的构建服务器上重新加载它们。

然后我使用" AppStore | Release"进行构建。个人资料,我在日志中看到了这条消息:

  

codesign -v -f -s" XXXXXX" " - 资源的规则= / ... / MyApp.app/ResourceRules.plist" - entitlements" /../ iSnagMobileiOS.xcent" " /../ iSnagMobileiOS.app"

entitlements参数中指定的文件包含预期的beta-reports-active键:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>get-task-allow</key>
    <false/>
    <key>application-identifier</key>
    <string>XXXXXXX.com.mycompany.myapp</string>
    <key>com.apple.developer.team-identifier</key>
    <string>XXXXXXXX</string>
    <key>beta-reports-active</key>
    <true/>
    <key>keychain-access-groups</key>
    <array>
        <string>XXXXX.com.mycompany.myapp</string>
    </array>
</dict>
</plist>

然后,我检索了生成的IPA,该IPA是使用我的分发证书签署的。为了检查是否已应用了正确的权利,我执行了此命令以检查配置文件:

  

解压缩-p MyApp.ipa Payload / MyApp.app / embedded.mobileprovision |安全cms -D

在XML片段中,我可以看到包含预期标志的权利字典:

<key>Entitlements</key>
<dict>
    <key>keychain-access-groups</key>
    <array>
        <string>XXXXXXXX.*</string>
    </array>
    <key>get-task-allow</key>
    <false/>
    <key>application-identifier</key>
    <string>XXXXXXXX.com.mycompany.myapp</string>
    <key>com.apple.developer.team-identifier</key>
    <string>XXXXXXXXX</string>
    <key>beta-reports-active</key>
    <true/>
</dict>

在IPA中也没有额外的Entitlements.plist文件可能会将其丢弃。

我使用Application Loader 3.0上传了IPA,但之后收到了此错误消息:

  

警告:ITMS-90191:&#34;缺少测试版权利。您的应用不包含beta-reports-active授权。如果您打算通过TestFlight分发此版本以进行beta测试,请使用新生成的配置文件重新构建此应用程序。&#34;

我在搜索此消息时发现了大量点击,但似乎没有一个描述上述问题;所有这些用户都发现重新生成配置文件并再次下载它就是所需要的。

我想知道我是否遇到了由旧版XCode或MonoTouch引起的问题,但在我更新了两者之后,我仍然遇到了同样的问题。我猜这个问题不是由Xamarin引起的,但可能是由我在构建配置中忽略的设置引起的,但我可能错了。

0 个答案:

没有答案