菜鸟教程小白 发表于 2022-12-12 14:39:16

ios - Ember Cordova 应用程序卡在 iOS 11.3 的加载屏幕上


                                            <p><p>我有一个使用 Corber 为 Ember-Cordova 构建的应用程序。
Xcode 9.3 版
Cordova [email protected]
所有依赖项都更新到最新版本。</p>

<p>我正在模拟器上进行测试,因为我没有可以安装 iOS 11 的开发 iPhone。</p>

<p>该应用在 iOS 11.2 及更早版本上可以正常加载 - 但在 iOS 11.3 上它会卡在初始屏幕上。过了一会儿,我看到一个加载图标,但页面永远不会改变。 </p>

<p>通过在应用程序开始加载后立即使用 Safari 进行分析,我可以看到 js 脚本和 css 没有从/www/index.html 加载。这是我在控制台日志中看到的:</p>

<blockquote>
<p>Cannot load script
file:///Users/username/Library/Developer/CoreSimulator/Devices/07A01A47-573B-4D25-ABE3-AV9179985ABF/data/Containers/Bundle/Application/7976FE33-BLO3-21E9-A055-707AAC68468B/App%20Name.app/www/assets/vendor-e8t893cf6a6bg0f81f23d4a68ae6ffde.js.
Failed integrity metadata check.</p>
</blockquote>

<p>我试图查找有关“完整性元数据检查”的信息,据我所知,iOS 正在运行它来验证正在导入的脚本的校验和。在 Xcode 中的/www/index.html 中,我可以看到脚本标签具有“完整性”属性,即两个校验和 - 一个 sha256,一个 sha512。例如</p>

<pre><code>&lt;script src=&#34;assets/vendor-e8e903cf6a6bf0f81f23d4b68ae6ffde.js&#34; integrity=&#34;sha256-MPm9fFc7ljuslonkMxW0TnQOAcy6KgJ4zLs+ptl/b58= sha512-oIqpQbUMPLBbSASoSCJ/+z55y2g6NlBzhTE3V+uDt8TNeJam5GAWoGT/D2u4ihIxE586JPu3c+r4GaUpjUWCAw==&#34;&gt;&lt;/script&gt;
</code></pre>

<p>所以我猜想发生的事情是 iOS 11.3 以某种方式检查文件的校验和,与它们的“完整性”属性进行比较,但没有得到匹配。有谁知道导致这种情况发生的原因以及如何解决?</p>

<p>注意虽然从表面上看,这与无法加载资源有关,但我认为这与内容安全策略无关——我在/www/index.html 中尝试了内容安全策略的多次迭代——最近:</p>

<blockquote>
<p>default-src * gap://ready file:; style-src &#39;self&#39; &#39;unsafe-inline&#39; *;
script-src &#39;self&#39; &#39;unsafe-inline&#39; &#39;unsafe-eval&#39; *</p>
</blockquote>

<p>这些似乎都没有影响,如果这是一个问题,我希望看到与内容安全策略相关的错误。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我们发现 <code>ember-cli-sri</code> 存在问题 - <a href="http://blog.isleofcode.com/untitled/" rel="noreferrer noopener nofollow">http://blog.isleofcode.com/untitled/</a> </p>

<p>ember-cli-sri repo 上的这条评论为我们解决了这个问题。
<a href="https://github.com/jonathanKingston/ember-cli-sri/issues/33#issuecomment-378448379" rel="noreferrer noopener nofollow">https://github.com/jonathanKingston/ember-cli-sri/issues/33#issuecomment-378448379</a> </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - Ember Cordova 应用程序卡在 iOS 11.3 的加载屏幕上,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/49931286/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/49931286/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - Ember Cordova 应用程序卡在 iOS 11.3 的加载屏幕上