【问题标题】:iTunes Connect Errors occurred in the app thinning process, and your app couldn’t be thinned?应用瘦身过程中出现iTunes Connect错误,无法瘦身?
【发布时间】:2017-01-16 08:43:12
【问题描述】:

我昨天通过 Xcode 上传了构建,它运行良好,但今天上传时构建完美上传,但 10 分钟后,我收到了一封电子邮件,苹果说明了这一点。

在处理您的 iOS 应用时,----------------Build(1.0.22),错误 发生在应用瘦身过程中,你的应用不能被 变薄了。如果您的应用程序包含位码,位码处理可能有 失败的。由于这些错误,您的应用程序的此构建将不会 能够提交审核或放置在 App Store 上。为了 可能有助于解决此问题的信息,请参阅技术说明 2432。

我只更改了一行代码并更改了内部版本号。而且,我上传的 4 个版本也出现了同样的错误。

【问题讨论】:

标签: ios xcode7 app-store-connect


【解决方案1】:

我今天遇到了这个问题,我使用了 google-api-objectivec-client-for-rest(作为框架)。 我尝试了上述所有解决方案,但都失败了。

现在我通过将 google-api-objectivec-client-for-rest 的所有源复制到我自己的项目来修复它。希望对你有帮助。

【讨论】:

    【解决方案2】:

    我的解决方案没有奏效,但也许可以让你摆脱困境

    在我自己的例子中,我用PhoneGap开发了我的IOS APP

    经过这么多研究,被告知要从我的 ItuneConenct 应用帐户https://developer.apple.com/library/mac/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/ChangingAppStatus.html禁用位码

    并且被引入了一个新的phonegap插件来禁用我的IOS APP中的位码https://www.npmjs.com/package/cordova-plugin-cs-disable-bitcode

    我添加到我的 Phonegap 应用程序 config.xml 文件中

    在重建我的 phonegap IOS 应用程序并使用应用程序生成器上传到 ItunesConenct 之后(上传成功消息)。上传几分钟后,我收到了来自 Apple 的相同消息,但出现了相同的错误。

    这可以给你一个提示

    【讨论】:

      【解决方案3】:

      终于搞定了。在我们的案例中,错误出在其中一个嵌入式框架中。生成一个 Production Ad-hoc 构建然后尝试导出它会生成一条错误消息,指出我们在其中一个框架文件中的设置中存在错误。该框架已经存在了一段时间,在此版本之前我们从未遇到过任何问题。

      【讨论】:

      • 你怎么发现它正在生成一个临时构建
      【解决方案4】:

      我遇到了同样的问题,我找到了解决方案。在我的应用程序中,我有 Google Plus 框架:GoogleOpenSource.framework。这个框架就是问题所在。我在 Google Plus 中搜索了最新的更新:https://developers.google.com/+/mobile/ios/upgrading-sdk

      最新版本是 1.7.1。这个版本也有同样的问题。在我的应用程序中,我删除了使用 Google Plus 的登录信息(已弃用 https://gyazo.com/685a58f98ee0b0fca16a6bd83636aad8)并添加了 Google:https://developers.google.com/identity/sign-in/ios/sdk/

      这对我有用。

      问候。

      【讨论】:

        【解决方案5】:

        嘿,伙计们,我的应用程序已获得 Apple Store 的批准。 我使用的技巧是这个

        在构建之前删除了我的应用根目录中的插件文件夹

        因为大多数插件与 Apple 不兼容,所以在我的清单文件中只使用其中的几个

        <plugin name="org.apache.cordova.inappbrowser" /> 
        <plugin name="org.apache.cordova.network-information" />
        <plugin name="org.apache.cordova.splashscreen" /> 
        <plugin name="cordova-plugin-whitelist" /> 
        

        当 Apple 刚刚向我发送一条消息说我的应用已获得批准时,我感到很惊讶。

        我家这个技巧为某人工作

        【讨论】:

          【解决方案6】:

          如果您最近遇到此问题,即自 2016 年 9 月以来,可能是由于您的应用标题中有“特殊字符”。

          我有几个相同代码的目标,其中一些可以正常处理,而另一些会失败。失败的都在标题中有苹果符号,例如一个应用程序被称为“?? Flags”。

          感谢 Krati Rastogi:https://forums.adobe.com/thread/2205923

          【讨论】:

          • 老兄,你救了我!在看到你的答案之前,我完全绝望了。我的应用显示名称最后包含表情符号。删除了表情符号字符,一切都很好。但是我有另一个具有相同命名类型的应用程序,编译得很好!非常感谢
          【解决方案7】:

          几天前我遇到了这种情况,我的临时解决方案是不包含 iOS 内容的位码,这是一个上传选项(见图)。 Apple 建议使用临时配置文件进行临时导出,以接收错误和失败日志,但我无法重现错误,并且临时导出每次都成功。当我发现如何重新启用位码时会更新这篇文章,但现在这似乎是一个很好的临时修复。 -更新:我的一个项目文件夹的名称有错误,与符号文件夹名称混淆,当我更正名称以匹配文件夹结构中的实际名称时,我能够正确上传 -

          【讨论】:

            【解决方案8】:

            我遇到了同样的症状并找到了解决办法。

            问题的根本原因是给定包的嵌入式 Info.plist 中的键无效/不正确。

            这通常是包含在第三方库中的 .bundle,例如GoogleMaps SDK。

            修复步骤如下:

            • 对于每个只包含资源的.bundle
              • 删除键/值CFBundleExecutable
              • 更改键的值 CFBundleSupportedPlatformsiPhoneOS(第 0 项,数组中的第一个元素。在我的例子中,之前的值是 iPhoneSimulator

            技术原因是如果没有可执行文件,CFBundleExecutable 不应该出现在包的 plist 中。 CFBundleSupportedPlatforms 的值不言自明,应该是 iPhoneOS

            Tech Note 2432 提到了上述两个键,但没有详细说明如何解决问题。

            我希望这个解决方案对你有用。

            【讨论】:

            • 尝试删除插件文件夹并让 config.xml 中的引用根据需要拉入插件。我刚刚发现它对我有用!
            • 我确实删除了提到的密钥,应用程序现在处于处理状态 2 小时,但还没有更新。其余值与上述相同。
            【解决方案9】:

            正如上述另一位用户所说...删除插件目录并解决问题!

            我刚刚上传了我的应用程序的全功能版本以及我所有的插件。当我使用 build.phonegap.com 编译 IPA 文件时,ZIP 文件中没有 Plugin 文件夹。我的 config.xml 文件中正确引用了这些插件。

            有效!

            我不知道为什么这是一个问题,但这是前进的动力!

            【讨论】:

              【解决方案10】:

              最后,我完成了这项工作!!!

              就像 @applejack42 所说,您必须删除所有 3rd 方库 info.plist 文件的 CFBundleExecutable 键。

              就我而言,我只是从 JSONModel info.plist 中删除此密钥,然后提交。

              成功了!

              我真的希望它对你有用,因为这个问题让我抓狂。

              【讨论】:

                【解决方案11】:

                从苹果商店更新 xcode 到 0914 发布的 8.0,重建项目并提交给 iturns,没有找到问题,而是需要使用 ios 10 sdk 的另一个问题的任何详细信息。我已经提交成功,正在等待批准。

                【讨论】:

                  【解决方案12】:

                  我尝试了各种构建并使用 Xcode 8 和 7 提交到 Itunes,但没有成功。

                  删除我的插件文件夹不是解决方案,也不是通过我所有的 .plist 查找 CFBundleExecutable。目前它只是在等待社区的进一步发现,或者返回我们的 3rd 方资源并要求他们更新他们的库,这可能不像苹果建议我们做的那么容易。

                  为了识别我在启用了 Bitcode 的 iPhone 上构建的受影响的库,在我的情况下,它们是三个需要更新的库。这可能不是最好的解决方案,但如果您需要向上级解释,这可能会为您节省一些时间来确定需要更新的内容。

                  我会在这条路上继续更新我的主题。

                  【讨论】:

                  • 这让我非常难过...现在跳转到 xcode 8(已经给我们带来了很多悲伤),我们希望在它结束时我们可以上传一个构建成功。
                  【解决方案13】:

                  Apple 建议先存档应用程序然后导出应用程序以进行临时分发来进行测试。如果有错误,您可以在日志中看到这一点,您可以从导出对话框中访问它们。

                  我最喜欢的解决方案,如果导出过程中没有错误:

                  1. 更新 cocoapods
                  2. 运行 pod 安装
                  3. 清理项目并重新提交

                  它只是对我有用,不知道为什么,但它可能值得一试,而不是浪费时间为不存在的问题寻找解决方案;)

                  【讨论】:

                    【解决方案14】:

                    对我来说,问题是我的一个框架没有嵌入和签名。希望对某人有所帮助

                    【讨论】:

                      【解决方案15】:

                      我在 Visual Studio 中使用 Xamarin IOS 项目遇到过这种情况

                      我已经解决了

                       1-)Clean All
                       2-)Rebuild All
                      

                      然后归档您的项目

                      【讨论】:

                        猜你喜欢
                        • 1970-01-01
                        • 1970-01-01
                        • 2014-05-10
                        • 2011-09-11
                        • 2018-07-09
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 2012-07-11
                        相关资源
                        最近更新 更多