菜鸟教程小白 发表于 2022-12-13 05:27:16

由于分发配置文件,iOS 应用程序在启动时崩溃? (libgdx + robovm)


                                            <p><p>我的 iOS 应用因提交而被拒绝两次,原因相同:启动时崩溃。鉴于日志,我猜它来 self 的配置文件和签名身份。
我正在使用 Libgdx 1.5.x 和 RoboVM beta 4,以及 Eclipse</p>

<p>当我构建没有配置文件的应用程序时,它可以在任何模拟器上构建并运行良好。
使用开发人员配置文件,该应用程序可以在我的测试设备上构建并运行良好。
一切都很好,直到我将 iosSignIdentity 和 iosProvisioningProfile 设置为分发,我有以下错误:</p>

<p>使用以下命令从控制台构建:</p>

<pre><code>./gradlew -Probovm.device.name=&lt;my device name&gt; launchIOSDevice --stacktrace
</code></pre>

<p>我收到错误:</p>

<pre><code>org.gradle.api.tasks.TaskExecutionException: Execution failed for task &#39;:ios:launchIOSDevice&#39;.
...
Caused by: org.robovm.libimobiledevice.LibIMobileDeviceException: ApplicationVerificationFailed
at org.robovm.libimobiledevice.util.AppLauncher$1.error(AppLauncher.java:1001)
at org.robovm.libimobiledevice.Callbacks.callInstproxyCallback(Callbacks.java:64)
</code></pre>

<p>我设备的日志(取自 Xcode)是:</p>

<pre><code>&lt;Error&gt;: profile not valid: 0xe8008012
&lt;Error&gt;: 0x1e3000 install_embedded_profile: Could not install embedded profile: 0xe8008012
&lt;Error&gt;: 0x1e3000 verify_signer_identity: MISValidateSignatureAndCopyInfo failed for /var/tmp/install_staging.6O8w3D/IOSLauncher.app/IOSLauncher: 0xe8008015
</code></pre>

<p>这是我为分发创建的配置文件,它链接到我的分发证书和我的应用程序:
<img src="/image/NHaDs.png" alt="enter image description here"/> </p>

<p>在我的 build.gradle 中,我设置了这样的身份和配置文件:</p>

<pre><code>    robovm {
iosSignIdentity = &#34;iPhone Distribution: &lt;my name&gt; (PK79UD6TA3)&#34;
iosProvisioningProfile = &#34;DistribKM&#34;
iosSkipSigning = false
stdoutFifo = null
stderrFifo = null
}
</code></pre>

<p>}</p>

<p>我正在从此命令行获取 iosSignIdentity:
<img src="/image/oMM7j.jpg" alt="enter image description here"/> </p>

<p>这就是我迷路的地方。我可以使用 </p> 构建应用程序

<pre><code>./gradlew -Probovm.ipaArchs=thumbv7:arm64 build createIPA
</code></pre>

<p>构建将成功。但我几乎可以肯定,如果我上传并提交此版本进行修订,Apple 将第三次拒绝它,原因与前两次相同:“应用程序在启动时崩溃”。</p>

<p>这是上传到 iTunes Connect 后的样子:
<img src="/image/uHlvy.jpg" alt="enter image description here"/> </p>

<p>在我提交应用程序之前,如何确保应用程序能够与分发配置文件一起正常工作?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>回答我自己,这可能有助于其他人知道,尽管这个构建在任何设备上都崩溃了,但它在几个小时前得到了 Apple 的批准。
因此,如果您遇到此处描述的相同问题,请最后一次检查所有内容,您的构建将崩溃,但它可以得到 Apple 的批准。
可惜的是,使用 Libgdx Robovm,使用 XCode 来检查配置文件和证书要么是不可能的,要么是非常困难的,所以你基本上必须相信一个飞跃......
希望对你有帮助</p></p>
                                   
                                                <p style="font-size: 20px;">关于由于分发配置文件,iOS 应用程序在启动时崩溃? (libgdx &#43; robovm),我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/28682290/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/28682290/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: 由于分发配置文件,iOS 应用程序在启动时崩溃? (libgdx &#43; robovm)