Tone.js 未在 iOs 上加载 Cordova
Tone.js doesn't load for Cordova on iOs
我正在尝试加载 Tone.js 库以在我的 Cordova 应用程序中使用 iOs 作为目标平台。
当我启动 iPhone 模拟器时,我在控制台中看到这个错误:
[shim] BKSProcessAssertion "ConnectionTerminationWatchdog" initialized with invalid pid
应用程序未加载,我只看到空白屏幕。
我试图从 CDN 加载库,如下所示:
<script src="https://cdnjs.cloudflare.com/ajax/libs/tone/13.4.9/Tone.min.js" ></script>
还有本地文件系统:
<script src="js/libs/tone/13.4.9/Tone.min.js"></script>
似乎没有任何区别。当我尝试从 Safari 调试应用程序时,我发现网页甚至没有加载。似乎以某种方式加载库会使应用程序永远挂起,直到崩溃。
我尝试在没有库的情况下加载应用程序,然后尝试使用 javascript 从控制台加载它,如下所示:
$.getScript( "js/libs/tone/13.4.9/Tone.min.js", function( data, textStatus, jqxhr ) {
console.log( data ); // Data returned
console.log( textStatus ); // Success
console.log( jqxhr.status ); // 200
console.log( "Load was performed." );
});
在我 运行 这个命令之后,Safari 就死了,就像 Tone.js 或加载程序中有一个无限循环一样。我正在尝试不同版本的 Tone.js lib - 没有发现任何区别。
这是我使用的环境:
Cordova Packages:
cli: 10.0.0
common: 4.0.2
create: 3.0.0
lib: 10.0.0
common: 4.0.2
fetch: 3.0.0
serve: 4.0.0
Project Installed Platforms:
android: 9.0.0
ios: 6.1.1
Project Installed Plugins:
cordova-plugin-whitelist: 1.3.4
Environment:
OS: macOS 11.1 (20C69) (darwin 20.2.0) x64
Node: v14.5.0
npm: 6.14.6
ios Environment:
xcodebuild:
Xcode 11.7
Build version 11E801a
我检查了 iPhone 个模拟器日志。
事实证明,WKWebView 对象在解析 Tone.js 库时崩溃,因为 iPhone 模拟器上缺少一些与 protobuf 相关的库。
模拟器与我的 XCode (11.7) 版本捆绑在一起。我将 XCode 升级到版本 12.3,问题消失了。
我正在尝试加载 Tone.js 库以在我的 Cordova 应用程序中使用 iOs 作为目标平台。 当我启动 iPhone 模拟器时,我在控制台中看到这个错误:
[shim] BKSProcessAssertion "ConnectionTerminationWatchdog" initialized with invalid pid
应用程序未加载,我只看到空白屏幕。
我试图从 CDN 加载库,如下所示:
<script src="https://cdnjs.cloudflare.com/ajax/libs/tone/13.4.9/Tone.min.js" ></script>
还有本地文件系统:
<script src="js/libs/tone/13.4.9/Tone.min.js"></script>
似乎没有任何区别。当我尝试从 Safari 调试应用程序时,我发现网页甚至没有加载。似乎以某种方式加载库会使应用程序永远挂起,直到崩溃。
我尝试在没有库的情况下加载应用程序,然后尝试使用 javascript 从控制台加载它,如下所示:
$.getScript( "js/libs/tone/13.4.9/Tone.min.js", function( data, textStatus, jqxhr ) {
console.log( data ); // Data returned
console.log( textStatus ); // Success
console.log( jqxhr.status ); // 200
console.log( "Load was performed." );
});
在我 运行 这个命令之后,Safari 就死了,就像 Tone.js 或加载程序中有一个无限循环一样。我正在尝试不同版本的 Tone.js lib - 没有发现任何区别。
这是我使用的环境:
Cordova Packages:
cli: 10.0.0
common: 4.0.2
create: 3.0.0
lib: 10.0.0
common: 4.0.2
fetch: 3.0.0
serve: 4.0.0
Project Installed Platforms:
android: 9.0.0
ios: 6.1.1
Project Installed Plugins:
cordova-plugin-whitelist: 1.3.4
Environment:
OS: macOS 11.1 (20C69) (darwin 20.2.0) x64
Node: v14.5.0
npm: 6.14.6
ios Environment:
xcodebuild:
Xcode 11.7
Build version 11E801a
我检查了 iPhone 个模拟器日志。
事实证明,WKWebView 对象在解析 Tone.js 库时崩溃,因为 iPhone 模拟器上缺少一些与 protobuf 相关的库。
模拟器与我的 XCode (11.7) 版本捆绑在一起。我将 XCode 升级到版本 12.3,问题消失了。