-
Creator 版本:3.8.2
-
Colyseus 是 0.15.15
-
目标平台: iOS 17.2
-
Xcode:Version 15.2 (15C500b)
-
重现方式:
- 用 Creator 创建空的 2D 工程,
- 然后按照 Colyseus 指南, https://docs.colyseus.io/getting-started/cocos-creator/ ,手动或者自定引入 Colyseus-SDK
- 在 Createor 里使用菜单 project -> build. 创建 iOS 项目
- 在模拟器/真机上运行 此 iOS 项目
- 控制台报错
- 首个报错:
17:28:13 [ERROR]: JS: TypeError: Cannot read properties of undefined (reading 'toLowerCase')
TypeError: Cannot read properties of undefined (reading 'toLowerCase')
at new <anonymous> (jsb-adapter/web-adapter.js:350:35)
at new Client (assets/main/index.js:5102:27)
at NetworkManager.start (assets/main/index.js:11270:25)
at eval (eval at createInvokeImplJit (src/cocos-js/cc.js:31426:63), <anonymous>:3:65)
at OneOffInvoker._invoke (src/cocos-js/cc.js:31433:13)
at OneOffInvoker.invoke (src/cocos-js/cc.js:31379:16)
at ComponentScheduler.startPhase (src/cocos-js/cc.js:31540:29)
at Director.tick (src/cocos-js/cc.js:35648:35)
at Game._updateCallback (src/cocos-js/cc.js:36730:22)
at src/cocos-js/cc.js:35790:20
- 重现概率:毕现
我使用这两个框架已经写了一个很大的游戏,可以在浏览器中运行。今天尝试移植到 iOS 平台,出现上述报错。
我尝试修改了 web-adapter.js 的代码,上述错误不再出现。但是下一个错误是
FormData 找不到定义
,看代码是 Colyseus 的封装代码。因为 Colyseus 用的是 CommonJS 规范,FormData 没有被导入。我使用的是 Colyseus 是 0.15.15,已经是为 Cocos-creator 定制过的版本。
然后我重新创建了干净的项目,还是会报错,请问双方官方确认可以在 iOS 上运行吗?