2.0.5 在ios9.3.5上跑还是失败了

今晚刚从2.0.1升级到2.0.5,目的就是为了解决不支持ios9的问题。启动的时候js没报错,原生层报错了。

先说下我的升级方式:
删除旧版creator安装新版creator,
保留项目原build目录,保留原ios Xcode工程。
修改build/jsb-default/.cocos-project.json, engine_version改为2.0.5。
从新版creator安装包内拷贝cocos2d-x替换掉jsb-default/frameworks原cocos2d-x。
构建过程无报错信息。

出错信息如下:

什么原因呢

:joy:

:joy:

奇怪啊,删除build目录,重新构建出xcode工程也报同样的错

我发现jsb-builtin.js里用了加载字体的时候用了promise, 应该是这个导致在ios9上运行不了吧

我们看看什么情况~

应该是新版Xcode不支持ios9,打包会闪退

可以啊,感谢。本来我怀疑是加载字体使用了promise导致黑屏。后来我屏蔽掉promise,但是原生层的gl报错一直存在。像是jsb-builtin.js调用flushCommands, 有些数据没传到原生层

Promise 在 IOS9.0上是不兼容的语法, 所以报错了,我们这边修复下。

如果说是不支持es6, 那jsb-builtin.js里的Float32Array也是es6引入的。原生层的gl报错是不是和这个有关?

修复了麻烦告知一下,我合并到项目里来

谢谢反馈,我们正在修复了!

你自己先做下处理,先把把this._loaded的赋值屏蔽掉,还是报错的话, 再屏蔽掉Float32Array这行代码。

好的,麻烦仔细检查一下jsb-builtin.js,我看了一下里面还有用到arraybuffer, uint8array等es6特性

mark

哥们问下 这两个步骤
修改build/jsb-default/.cocos-project.json, engine_version改为2.0.5。 (我没有找到这个j son文件)
从新版creator安装包内拷贝cocos2d-x替换掉jsb-default/frameworks原cocos2d-x。(我没有在build/jsb-link/frameworks文件夹下找到cocos2d-x文件夹呀, 我应该覆盖在哪里呢?)

眼瞎了 这个文件找到了.cocos-project.json
frameworks下的cocos2d-x在哪里 真没找到…