Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

hot update load script but error 5000 (cocos creator 1.9.1) #12

Open
tocaonguyen opened this issue Jul 22, 2018 · 2 comments
Open

hot update load script but error 5000 (cocos creator 1.9.1) #12

tocaonguyen opened this issue Jul 22, 2018 · 2 comments

Comments

@tocaonguyen
Copy link

here file main.js

`(function () {

function boot () {

    var settings = window._CCSettings;
    window._CCSettings = undefined;

    if ( !settings.debug ) {
        var uuids = settings.uuids;

        var rawAssets = settings.rawAssets;
        var assetTypes = settings.assetTypes;
        var realRawAssets = settings.rawAssets = {};
        for (var mount in rawAssets) {
            var entries = rawAssets[mount];
            var realEntries = realRawAssets[mount] = {};
            for (var id in entries) {
                var entry = entries[id];
                var type = entry[1];
                // retrieve minified raw asset
                if (typeof type === 'number') {
                    entry[1] = assetTypes[type];
                }
                // retrieve uuid
                realEntries[uuids[id] || id] = entry;
            }
        }

        var scenes = settings.scenes;
        for (var i = 0; i < scenes.length; ++i) {
            var scene = scenes[i];
            console.log('scene.url',scene.url)
            if (typeof scene.uuid === 'number') {
                scene.uuid = uuids[scene.uuid];
            }
        }

        var packedAssets = settings.packedAssets;
        for (var packId in packedAssets) {
            var packedIds = packedAssets[packId];
            for (var j = 0; j < packedIds.length; ++j) {
                if (typeof packedIds[j] === 'number') {
                    packedIds[j] = uuids[packedIds[j]];
                }
            }
        }
    }

    // init engine
    var canvas;

    if (cc.sys.isBrowser) {
        canvas = document.getElementById('GameCanvas');
    }

    if (false) {
        var ORIENTATIONS = {
            'portrait': 1,
            'landscape left': 2,
            'landscape right': 3
        };
        BK.Director.screenMode = ORIENTATIONS[settings.orientation];
        initAdapter();
    }

    function setLoadingDisplay () {
        // Loading splash scene
        var splash = document.getElementById('splash');
        var progressBar = splash.querySelector('.progress-bar span');
        cc.loader.onProgress = function (completedCount, totalCount, item) {
            var percent = 100 * completedCount / totalCount;
            if (progressBar) {
                progressBar.style.width = percent.toFixed(2) + '%';
            }
        };
        splash.style.display = 'block';
        progressBar.style.width = '0%';

        cc.director.once(cc.Director.EVENT_AFTER_SCENE_LAUNCH, function () {
            splash.style.display = 'none';
        });
    }

    var onStart = function () {
        cc.view.resizeWithBrowserSize(true);

        if (!false && !false) {
            // UC browser on many android devices have performance issue with retina display
            if (cc.sys.os !== cc.sys.OS_ANDROID || cc.sys.browserType !== cc.sys.BROWSER_TYPE_UC) {
                cc.view.enableRetina(true);
            }
            if (cc.sys.isBrowser) {
                setLoadingDisplay();
            }

            if (cc.sys.isMobile) {
                if (settings.orientation === 'landscape') {
                    cc.view.setOrientation(cc.macro.ORIENTATION_LANDSCAPE);
                }
                else if (settings.orientation === 'portrait') {
                    cc.view.setOrientation(cc.macro.ORIENTATION_PORTRAIT);
                }
                cc.view.enableAutoFullScreen([
                    cc.sys.BROWSER_TYPE_BAIDU,
                    cc.sys.BROWSER_TYPE_WECHAT,
                    cc.sys.BROWSER_TYPE_MOBILE_QQ,
                    cc.sys.BROWSER_TYPE_MIUI,
                ].indexOf(cc.sys.browserType) < 0);
            }

            // Limit downloading max concurrent task to 2,
            // more tasks simultaneously may cause performance draw back on some android system / brwosers.
            // You can adjust the number based on your own test result, you have to set it before any loading process to take effect.
            if (cc.sys.isBrowser && cc.sys.os === cc.sys.OS_ANDROID) {
                cc.macro.DOWNLOAD_MAX_CONCURRENT = 2;
            }
        }

        // init assets
        cc.AssetLibrary.init({
            libraryPath: 'res/import',
            rawAssetsBase: 'res/raw-',
            rawAssets: settings.rawAssets,
            packedAssets: settings.packedAssets,
            md5AssetsMap: settings.md5AssetsMap
        });

        if (false) {
            cc.Pipeline.Downloader.PackDownloader._doPreload("WECHAT_SUBDOMAIN", settings.WECHAT_SUBDOMAIN_DATA);
        }

        var launchScene = settings.launchScene;

        // load scene
        cc.director.loadScene(launchScene, null,
            function () {
                if (cc.sys.isBrowser) {
                    // show canvas
                    canvas.style.visibility = '';
                    var div = document.getElementById('GameDiv');
                    if (div) {
                        div.style.backgroundImage = '';
                    }
                }
                cc.loader.onProgress = null;
                console.log('Success to load scene: ' + launchScene);
            }
        );
    };

    // jsList
    var jsList = settings.jsList;

    if (false) {
        BK.Script.loadlib();
    }
    else
    {
        var bundledScript = settings.debug ? 'src/project.dev.js' : 'src/project.js';
        if (jsList) {
            jsList = jsList.map(function (x) {
                return 'src/' + x;
            });
            jsList.push(bundledScript);
        }
        else {
            jsList = [bundledScript];
        }
    }

    // anysdk scripts
    if (cc.sys.isNative && cc.sys.isMobile) {

// jsList = jsList.concat(['src/anysdk/jsb_anysdk.js', 'src/anysdk/jsb_anysdk_constants.js']);
}

    var option = {
        //width: width,
        //height: height,
        id: 'GameCanvas',
        scenes: settings.scenes,
        debugMode: settings.debug ? cc.DebugMode.INFO : cc.DebugMode.ERROR,
        showFPS: (!false && !false) && settings.debug,
        frameRate: 60,
        jsList: jsList,
        groupList: settings.groupList,
        collisionMatrix: settings.collisionMatrix,
        renderMode: 0
    }

    cc.game.run(option, onStart);
}

if (false) {
    BK.Script.loadlib('GameRes://libs/qqplay-adapter.js');
    BK.Script.loadlib('GameRes://src/settings.js');
    BK.Script.loadlib();
    BK.Script.loadlib('GameRes://libs/qqplay-downloader.js');
    qqPlayDownloader.REMOTE_SERVER_ROOT = "";
    var prevPipe = cc.loader.md5Pipe || cc.loader.assetLoader;
    cc.loader.insertPipeAfter(prevPipe, qqPlayDownloader);
    // <plugin script code>
    boot();
    return;
}

if (false) {
    require(window._CCSettings.debug ? 'cocos2d-js.js' : 'cocos2d-js-min.js');
    var prevPipe = cc.loader.md5Pipe || cc.loader.assetLoader;
    cc.loader.insertPipeAfter(prevPipe, wxDownloader);
    boot();
    return;
}
 if (window.cc && cc.sys.isNative) { 
    var hotUpdateSearchPaths = cc.sys.localStorage.getItem('HotUpdateSearchPaths'); 
    console.log('hotUpdateSearchPaths',hotUpdateSearchPaths)
    if (hotUpdateSearchPaths) { 
        jsb.fileUtils.setSearchPaths(JSON.parse(hotUpdateSearchPaths)); 
    }
}

if (window.jsb) {
    require('src/settings.js');
    require('src/jsb_polyfill.js');
    boot();
    return;
}


if (window.document) {
    var splash = document.getElementById('splash');
    splash.style.display = 'block';

    var cocos2d = document.createElement('script');
    cocos2d.async = true;
    cocos2d.src = window._CCSettings.debug ? 'cocos2d-js.js' : 'cocos2d-js-min.js';

    var engineLoaded = function () {
        document.body.removeChild(cocos2d);
        cocos2d.removeEventListener('load', engineLoaded, false);
        window.eruda && eruda.init() && eruda.get('console').config.set('displayUnenumerable', false);
        boot();
    };
    cocos2d.addEventListener('load', engineLoaded, false);
    document.body.appendChild(cocos2d);
}

})();
`

STACK:
[0]_onPreDestroy@src/jsb_polyfill.js:14188
[1]_onPreDestroy@src/jsb_polyfill.js:1751
[2]98.u._destroyImmediate@src/jsb_polyfill.js:11995
[3]_onPreDestroy@src/jsb_polyfill.js:14186
[4]_onPreDestroy@src/jsb_polyfill.js:1751
[5]98.u._destroyImmediate@src/jsb_polyfill.js:11995
[6]_onPreDestroy@src/jsb_polyfill.js:14186
[7]_onPreDestroy@src/jsb_polyfill.js:1751
[8]98.u._destroyImmediate@src/jsb_polyfill.js:11995
[9]_onPreDestroy@src/jsb_polyfill.js:14186
[10]_onPreDestroy@src/jsb_polyfill.js:1751
[11]98.u._destroyImmediate@src/jsb_polyfill.js:11995
[12]_onPreDestroy@src/jsb_polyfill.js:14186
[13]_onPreDestroy@src/jsb_polyfill.js:1751
[14]98.u._destroyImmediate@src/jsb_polyfill.js:11995
[15]s@src/jsb_polyfill.js:11892
[16]callback@src/jsb_polyfill.js:18235
E/jswrapper (519): [ERROR] (..\jswrapper\v8\Object.cpp, 519): Invoking function (09829418) failed!
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
D/jswrapper (125): JS: [ERROR]: Error 5000, please go to https://github.com/cocos-creator/engine/blob/master/EngineErrorMap.md#5000 to see details.
E/jswrapper (267): ERROR: Uncaught TypeError: Cannot read property '_destroyImmediate' of null, location: src/jsb_polyfill.js:0:0

@xianyinchen
Copy link
Collaborator

have you restart game after hot update finish?

@tocaonguyen
Copy link
Author

tocaonguyen commented Mar 2, 2021 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants