- 发布:2025-01-26 15:08
- 更新:2025-01-26 15:08
- 阅读:20
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: win10
HBuilderX类型: 正式
HBuilderX版本号: 4.24
手机系统: 全部
页面类型: vue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
测试过的手机:
操作步骤:
调用录制视频:```js
let camera : PlusCameraCamera = plus.camera.getCamera();
camera.startVideoCapture(
function (path) {
return new Promise((resolve, reject) => {
plus.io.requestFileSystem(
plus.io.PRIVATE_WWW,
(fs : PlusIoFileSystem) => {
fs.root?.getFile(
path,
{ create: false },
(fileEntry : PlusIoFileEntry) => {
fileEntry.file(
(file : PlusIoFile) => {
const fileReader : PlusIoFileReader = new plus.io.FileReader();
//在这里的时候就会卡死
fileReader.onloadend = (evt : PlusIoFileEvent) => {
resolve({
});
};
fileReader.readAsDataURL(file, "utf-8");
},
fileError => {
reject("获取文件对象失败:" + fileError);
},
);
},
fileEntryError => {
reject("读取文件失败:" + fileEntryError);
},
);
},
fsError => {
reject("读取文件失败:" + fsError);
},
);
});
},
function (err) {
console.log(err)
}, {
resolution: "1920*1080",
});
调用录制视频:```js
let camera : PlusCameraCamera = plus.camera.getCamera();
camera.startVideoCapture(
function (path) {
return new Promise((resolve, reject) => {
plus.io.requestFileSystem(
plus.io.PRIVATE_WWW,
(fs : PlusIoFileSystem) => {
fs.root?.getFile(
path,
{ create: false },
(fileEntry : PlusIoFileEntry) => {
fileEntry.file(
(file : PlusIoFile) => {
const fileReader : PlusIoFileReader = new plus.io.FileReader();
//在这里的时候就会卡死
fileReader.onloadend = (evt : PlusIoFileEvent) => {
resolve({
});
};
fileReader.readAsDataURL(file, "utf-8");
},
fileError => {
reject("获取文件对象失败:" + fileError);
},
);
},
fileEntryError => {
reject("读取文件失败:" + fileEntryError);
},
);
},
fsError => {
reject("读取文件失败:" + fsError);
},
);
});
},
function (err) {
console.log(err)
}, {
resolution: "1920*1080",
});
预期结果:
视频文件小于20M,正常读取
视频文件小于20M,正常读取
实际结果:
视频文件大于20M,卡死
视频文件大于20M,卡死
bug描述:
调用plus对象录制视频,再使用plus.io.FileReader读取视频文件会直接卡死
0 个回复