uniApp移动端安卓中使用webview打开pdf文件是下载而不是预览解决方案

关键 使用到 pdf.js

第一步:

下载pdf.js 文件到项目根目录

也就是这个文件

附下载地址:uni-app-pdf: 在uni-app中使用pdf.js实现在手机上打开pdf

也可通过其他方法下载 如npm

第二步:

拷贝hybrid文件到项目根目录

第三步:

新建 viewPdf.vue文件

javascript 复制代码
<template>
		<view>
			<web-view :src="webViewSrc"></web-view>
		</view>
</template>

<script setup lang="ts">
	import { ref, getCurrentInstance } from 'vue';
	import config from "@/utils/http/config.js";
	import { onLoad } from '@dcloudio/uni-app';
	const { proxy } : any = getCurrentInstance()
	let Url = ref()
	Url.value = config.filesUrl.dev

	let webViewSrc = ref()

	let viewerUrl = '/hybrid/html/web/viewer.html'; // 根目录文件地址

	onLoad((option : any) => {
		 // option.url 从其他需要预览pdf文件的页面传入的url
		let deviceInfo = uni.getDeviceInfo()
		if (deviceInfo.platform !== 'ios') {
			//option.url  就是预览的pdf地址
			webViewSrc.value = `${viewerUrl}?file=${Url.value + option.url}`
		} else {
			// ios,直接访问pdf所在路径
			webViewSrc.value = Url.value + option.url
		}

	})

</script>
第四步:

使用

javascript 复制代码
<template>
        <view @click="change_pdf(file_url)"> 点击查看附件 </view>  //file_url pdf文件路径
</template>



<script setup lang="ts">
	function change_pdf(url : any) {
		uni.navigateTo({
			url: `/pages/index/viewPdf?url=${url}`
		})
	}
</script>

注:ios可省略步骤 直接使用<web-view :src="文件路径"></web-view> 即可

相关推荐
2501_9160074721 小时前
苹果手机iOS应用管理全指南与隐藏功能详解
android·ios·智能手机·小程序·uni-app·iphone·webview
2501_915106321 天前
全面理解 iOS 帧率,构建从渲染到系统行为的多工具协同流畅度分析体系
android·ios·小程序·https·uni-app·iphone·webview
2501_916008891 天前
iOS 能耗检测的工程化方法,构建多工具协同的电量分析与性能能效体系
android·ios·小程序·https·uni-app·iphone·webview
济南壹软网络科技有限公司1 天前
综合社交服务平台的技术架构与实践:构建高可用、多端覆盖的互动生态
uni-app·php·开源源码·陪玩陪聊h5
2501_915921431 天前
重新理解 iOS 的 Bundle Id 从创建、管理到协作的工程策略
android·ios·小程序·https·uni-app·iphone·webview
2501_915106321 天前
当 altool 退出历史舞台,iOS 上传链路的演变与替代方案的工程实践
android·ios·小程序·https·uni-app·iphone·webview
00后程序员张1 天前
Transporter 的局限与替代路径,iOS 上传流程在多平台团队中的演进
android·ios·小程序·https·uni-app·iphone·webview
lwprain1 天前
uniapp使用uniview-plus性能问题处理
uni-app
00后程序员张1 天前
Python 抓包工具全面解析,从网络监听、协议解析到底层数据流捕获的多层调试方案
开发语言·网络·python·ios·小程序·uni-app·iphone
就叫飞六吧1 天前
pdf转国产ofd格式代码案例-Java
java·python·pdf