引擎从2.0.8升级2.2.1之后打包安卓app启动后黑屏

  • Creator 版本:2.2.1

  • 目标平台: Android

  • 详细报错信息,包含调用堆栈:
    E/jswrapper: ERROR: Uncaught TypeError: renderer.Texture2D is not a constructor, location: src/cocos2d-jsb.js:0:0
    STACK:
    [0]handleLoadedTexture@src/cocos2d-jsb.js:11271
    [1]initWithElement@src/cocos2d-jsb.js:11208
    [2]set@src/cocos2d-jsb.js:11102
    [3]loadCallback@src/cocos2d-jsb.js:24083
    [4]anonymous@src/cocos2d-jsb.js:24099
    [5]anonymous@src/cocos2d-jsb.js:22176
    [6]128.proto.allComplete@src/cocos2d-jsb.js:23438
    [7]128.proto.itemComplete@src/cocos2d-jsb.js:23492
    [8]128.LoadingItems.itemComplete@src/cocos2d-jsb.js:23359
    [9]131.proto.flowOut@src/cocos2d-jsb.js:23794
    [10]flow@src/cocos2d-jsb.js:23725
    [11]anonymous@src/cocos2d-jsb.js:23715
    [12]anonymous@src/cocos2d-jsb.js:22894
    [13]img.onload@jsb-adapter/jsb-engine.js:2447
    [14]dispatchEvent@jsb-adapter/jsb-builtin.js:2822
    [15]anonymous@jsb-adapter/jsb-builtin.js:3541

  • 重现方式:
    引擎版本从2.0.8升级到2.2.1之后构建发布项目。
    在Android studio运行项目 能正确编译 但是应用启动之后黑屏

  • 之前哪个版本是正常的 :cocoscreator 2.0.8

  • 手机型号 :Redmi Note 8 Pro

  • 手机浏览器 :

  • 编辑器操作系统 :Win10专业版 版本号1809

  • 编辑器之前是否有其它报错 :
    编辑器运行浏览器预览没有报错。

编辑器运行模拟器预览有报错。
报错信息堆栈如下:

Simulator: E/jswrapper (272): ERROR: Uncaught TypeError: Cannot read property ‘_programLib’ of null, location: src/cocos2d-jsb.js:0:0
STACK:
[0]onLoad@src/cocos2d-jsb.js:12404
[1]loadUuid@src/cocos2d-jsb.js:26927
[2]157.Loader.handle@src/cocos2d-jsb.js:25986
[3]flow@src/cocos2d-jsb.js:26473
[4]flow@src/cocos2d-jsb.js:26491
[5]anonymous@src/cocos2d-jsb.js:26481
[6]anonymous@src/cocos2d-jsb.js:25249
[7]queryAssetInfo@src/cocos2d-jsb.js:30399
[8]149.AssetLoader.handle@src/cocos2d-jsb.js:25222
[9]flow@src/cocos2d-jsb.js:26473
[10]161.proto.flowIn@src/cocos2d-jsb.js:26546
[11]158.proto.append@src/cocos2d-jsb.js:26193
[12]148.proto.flowInDeps@src/cocos2d-jsb.js:24944
[13]loadDepends@src/cocos2d-jsb.js:26838
[14]loadUuid@src/cocos2d-jsb.js:26930
[15]157.Loader.handle@src/cocos2d-jsb.js:25986
[16]flow@src/cocos2d-jsb.js:26473
[17]flow@src/cocos2d-jsb.js:26491
[18]anonymous@src/cocos2d-jsb.js:26481
[19]anonymous@src/cocos2d-jsb.js:25249
E/jswrapper (562): [ERROR] (f:\jenkins\workspace\creator_2d\cocos2d-x-lite\windows\cocos2d-x-lite\cocos\scripting\js-bindings\jswrapper\v8\object.cpp, 562): Invoking function (0EBFFCC0) failed!
at HTMLElement.print-simulator-log (C:\CocosCreator_2.2.1\resources\app.asar\editor\builtin\scene\panel\messages\scene.js:1:1608)
at Object.e._dispatch (C:\CocosCreator_2.2.1\resources\app.asar\editor-framework\lib\renderer\panel.js:1:1876)
at EventEmitter. (C:\CocosCreator_2.2.1\resources\app.asar\editor-framework\lib\renderer\ipc.js:1:2952)
at EventEmitter.emit (events.js:194:13)

  • 出现概率:必现

  • 额外线索:

删除下build目录,重新构建编译~

我进行了如下操作:
1.删除发布路径下的jsb-link目录重新构建生成
2.把Android studio项目工程目录下的.externalNativeBuild和build 删除
3.用新构建生成的资源编译运行

app能够运行,但是报错了 报错信息如下:
E/jswrapper: ScriptEngine::evalString script src/project.dev.js, failed!
E/jswrapper: [ERROR] Failed to invoke require, location: F:/cocos_hsqddz/cocos2d-x/cocos/scripting/js-bindings/manual/jsb_global.cpp:292
E/jswrapper: ERROR: Uncaught TypeError: Cannot read property ‘_programLib’ of null, location: src/cocos2d-jsb.js:0:0
STACK:
[0]onLoad@src/cocos2d-jsb.js:10340
[1]loadUuid@src/cocos2d-jsb.js:24161
[2]127.Loader.handle@src/cocos2d-jsb.js:23220
[3]flow@src/cocos2d-jsb.js:23707
[4]flow@src/cocos2d-jsb.js:23725
[5]flow@src/cocos2d-jsb.js:23725
[6]anonymous@src/cocos2d-jsb.js:23715
[7]anonymous@src/cocos2d-jsb.js:22483
[8]queryAssetInfo@src/cocos2d-jsb.js:26951
[9]119.AssetLoader.handle@src/cocos2d-jsb.js:22456
[10]flow@src/cocos2d-jsb.js:23707
[11]131.proto.flowIn@src/cocos2d-jsb.js:23780
[12]128.proto.append@src/cocos2d-jsb.js:23427
[13]118.proto.flowInDeps@src/cocos2d-jsb.js:22184
[14]loadDepends@src/cocos2d-jsb.js:24072
[15]loadUuid@src/cocos2d-jsb.js:24164
[16]127.Loader.handle@src/cocos2d-jsb.js:23220
[17]flow@src/cocos2d-jsb.js:23707
[18]flow@src/cocos2d-jsb.js:23725
[19]flow@src/cocos2d-jsb.js:23725
E/jswrapper: ScriptEngine::evalString script main.js, failed!

自定义shader了?

该项目没有自定义shader.

给个demo吧,确实没遇到过这样的情况

谢谢了!
emmm demo不太好给 单纯的helloworld 2.0.8项目升上来没啥问题。。我自己再排查下问题看看吧。

请问你这边问题 解决了么?

请问解决方法是什么呢、