cc.assetManager.loadAny二进制数据

cc.assetManager.loadAny(

        { url: 'http://127.0.0.1/map/dengdai.map', ext: '.bin' }, function (err, data:ArrayBuffer) {

                           

            console.log("err ===", data);

            console.log("data ===",data.byteLength,data[0]);

        }

    )

这个ArrayBuffer怎么放不了DataView里呀
报错这个data不是ArrayBuffer

我记得返回的应该是 data:cc.BufferAsset 类型吧
data._buffer 才是 ArrayBuffer

怎么转成ArrayBuffer啊

cc.assetManager.loadAny({ url: 'http://127.0.0.1/map/dengdai.map', ext: '.bin' }, function (err, data:cc.BufferAsset) {

                           

            console.log("err ===", data._buffer);


        }

    )

这样试试

谢谢,我试一下

没有这个方法

没有这个方法,然后默认是返回的一个字节数组

这是没有暴露的变量, 但是可以使用

返回的是undefined

你看看哪里出现问题了吧, 二进制是这样使用的

直接打印 是显示 字节数组
然后data._buffer 就显示undefined

cc.assetManager.loadAny({ url: 'http://localhost:7456/assets/others/native/a8/a8cf10be-2f60-4012-962e-a96d6198c9f6.bin' }, function (err, data) {
        var dataView = new DataView(data);
        cc.assert(ArrayBuffer.isView(dataView), "类型不正确");
    });

测试了下没问题,是不是你的二进制文件有问题

链接:https://pan.baidu.com/s/1uB0XA0zRjugVrxRc3hNg5w
提取码:eq5l
这个文件 你试一下 是二进制文件

cc.assetManager.loadBundle("testBundle", function (error, bundle) {
cc.assetManager.loadAny({ path: "testBin1" }, { bundle: "testBundle" }, function (error, data) {
    var dataView = new DateView(data._buffer);
});

})