HarmonyOS 使用document.loadDocument预览沙箱路径下的pdf无反应

  1. 尝试使用 document.loadDocument 预览沙箱路径下的pdf无反应
  2. 尝试使用 webview 预览沙箱路径下的pdf,结果显示白屏请问有什么方法可以正常预览pdf文件?
HarmonyOS
2024-12-25 15:34:16
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
zbw_apple

建议使用web组件

import media from '@ohos.multimedia.media';
import web_webview from '@ohos.web.webview';
import { request } from '@kit.BasicServicesKit';
import common from '@ohos.app.ability.common';
import fs from '@ohos.file.fs';
@Entry
@Component
struct WebViewPageDemo {
  webviewController: web_webview.WebviewController = new web_webview.WebviewController();
  @State fileUrl: string = ''
  @State title: string = ''
  path=''
  hasFile(filePath:string){
    let b = fs.accessSync(filePath)
    return b
  }

  aboutToAppear() {
    const context = getContext(this) as common.UIAbilityContext
    this.path=context.filesDir+'/1700182405099.pdf'
    console.log('demo ', this.path)
    console.log(this.hasFile(this.path)+'123456')
    if(!this.hasFile(this.path)) {
      request.downloadFile(context, {
        url: 'https:huawei.pdf',
        filePath: this.path
      }).then((data: request.DownloadTask) => {
        data.on('complete', () => {
          console.log('demo complete', this.path)
          this.fileUrl = this.path
        })
        data.on('fail', (err) => {
          console.log('demo fail', this.path)
          this.fileUrl = this.path
        })
      })
    }
  }

  build(){
    Column(){
      Button('loadUrl').onClick(()=>{
        this.webviewController.loadUrl('file://'+this.path)
      })
      Web({src: '', controller: this.webviewController})
        .javaScriptAccess(true)
        .domStorageAccess(true)
        .verticalScrollBarAccess(true)
        .fileAccess(true)
        .height('100%')
        .width('100%').onControllerAttached(() => {
        this.webviewController.loadUrl('file://'+this.path)
      })
    }
    .height('100%')
    .width('100%')
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
分享
微博
QQ
微信
回复
2024-12-25 17:42:36
相关问题
HarmonyOS 预览沙箱路径文件失败
679浏览 • 1回复 待解决
使用web组件实现预览沙箱pdf
2976浏览 • 1回复 待解决
通过loadDocument()接口加载PDF文件
1077浏览 • 1回复 待解决
HarmonyOS 使用PDF kit预览PDF文件
872浏览 • 1回复 待解决
HarmonyOS 执行createAsset方法反应
1017浏览 • 1回复 待解决
修改沙箱路径json文件指定内容
3003浏览 • 1回复 待解决
ETs,对沙箱路径json文件内容遍历
3876浏览 • 1回复 待解决
HarmonyOS使用Web组件预览PDF和图片
1646浏览 • 1回复 待解决
HarmonyOS PDF打印及PDF预览失败
1334浏览 • 1回复 待解决
HarmonyOS PDF 预览问题
1210浏览 • 1回复 待解决
HarmonyOS PDF文件预览
849浏览 • 1回复 待解决
HarmonyOS push可以收到,但点击反应
701浏览 • 1回复 待解决