HarmonyOS 鸿蒙Next web加载本地pdf无法显示

发布于 1周前 作者 phonegap100 来自 鸿蒙OS

HarmonyOS 鸿蒙Next web加载本地pdf无法显示

之前还正常,可以显示,今天测试提bug说显示不了,我一检查,发现以前的功能也不行了。

流程,从服务器下载了pdf文件,写到沙盒内,将路径给web进行加载显示。

问题1:根据文档https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/web-pdf-preview-V5,显示我传递的路径前面应该有file://,但是我本地写的时候是没有的。如果这里

//保存文件并返回保存路径
saveFile(buf: ArrayBuffer, fileName: string): string {
try {
let pathDir = getContext(this).filesDir;
let filePath = pathDir + “/” + fileName;  //如果这里前面加上’file://’ 保存会直接失败,所以这里不加.
//删除文件
if (fs.accessSync(filePath,0)) {
fs.unlinkSync(filePath)
}

 let file = fs.openSync(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
 fs.writeSync(file.fd, buf);
 console.log(<span class="hljs-string"><span class="hljs-string">"文件已保存到:"</span></span> + filePath + <span class="hljs-string"><span class="hljs-string">"\r\n"</span></span> )
 fs.closeSync(file);
 <span class="hljs-keyword"><span class="hljs-keyword">return</span></span> filePath

} catch (e) { return ‘’ } }<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

这个返回的filePath是:/data/storage/el2/base/haps/main_app/files/附件详情.pdf

这里也不能加"file://",否则web也会加载不出来。

所以我的web是src就是:/data/storage/el2/base/haps/main_app/files/附件详情.pdf

Web({ src: ‘/data/storage/el2/base/haps/main_app/files/附件详情.pdf’, controller: this.webController })
.domStorageAccess(true)<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

这里之前也还能正常显示,前两天测试机升级到Beta 3后发现打卡不开了,找了一个Beta1的手机发现也打不开了。请问是那里出了问题?



关于HarmonyOS 鸿蒙Next web加载本地pdf无法显示的问题,您也可以访问:https://www.itying.com/category-93-b0.html 联系官网客服。

6 回复

et file = fs.openSync(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);

改成read   写是要权限的

中文路径是不是有问题,试试改为英文呢?

路径没问题,就是手机升级到beta3后不行了。现在用pdfView打开了。

找HarmonyOS工作还需要会Flutter技术的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:https://www.bilibili.com/video/BV1S4411E7LY/?p=17

pdfView 直接能打开 ‘/data/storage/el2/base/haps/main_app/files/附件详情.pdf’, 沙箱路径吗

回到顶部