uniapp app分享pdf等文件等到微信以及其他应用

news2024/7/6 20:21:11

uniapp自带的api uni.share只能分享图文等,但不能分享pdf这种之类的
想实现分享文件这种就要调用系统的分享功能
分享插件地址
这个插件完美解决,安卓分享到微信也不需要配置appid
封装用法

/**
 * 任意文件分享,需勾选云插件并云打包
 * 安卓调用系统分享无需勾选配置appid,Ios需勾选分享配置,并添加微信appid
 * 参数传对象
 * 参数url:文件网络地址 必填
 * 参数fileType:分享的对象 QQ为QQ,微信为WX,系统默认是SYSTEM,不填写默认SYSTEM
 * 参数name:文件名字 如:电子发票
 * */
const FileShare= uni.requireNativePlugin('life-FileShare');//分享文件
const anyShareFile = (e) =>{
	if(!e.url) return 'url缺失';	
	let url = e.url;
	let fileType = e.fileType || 'SYSTEM';
	let name = e.name || '文件';
	let aa = name+"."+ url.slice(url.lastIndexOf(".") + 1).toLowerCase();//获取该文件类型
	//下面使用这个下载方式,亲测,如果用uniapp自身的ios中文乱码,下面可以重命名不会乱码,分享就是FileShare调用
	    var dtask = plus.downloader.createDownload(url,  {filename:"_doc/pdf/"+aa}, function(d, status){
	                        // 下载完成
	                if(status == 200){                          
	                    FileShare.render({
	                        type:fileType,//QQ为QQ,微信为WX,系统默认是SYSTEM,不填写默认SYSTEM
	                        filePath:plus.io.convertLocalFileSystemURL(d.filename),
	                }, result => {
						
	                }
	                );
	            } else {
	                console.log("Download failed: " + status); 
	            }  
	    });
	dtask.start();
}

注意!插件可能需要获取对应的权限,并去勾选云端插件
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/728064.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DFS解决N-皇后问题

题目: n−皇后问题是指将 n个皇后放在 nn的国际象棋棋盘上,使得皇后不能相互攻击到,即任意两个皇后都不能处于同一行、同一列或同一斜线上。 现在给定整数 n,请你输出所有的满足条件的棋子摆法。 输入格式 共一行,包…

《IntelliJ IDEA 2023最新版快捷键大全GIF动图演示》——提升你的开发效率

🌷🍁 博主 libin9iOak带您 Go to New World.✨🍁 🦄 个人主页——libin9iOak的博客🎐 🐳 《面试题大全》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~&#x1f33…

用css来实现上下左右箭头

i {/* 用border值来控制箭头粗细 */border: 3px solid black;/* 上、右、下、左 四个边框的宽度 */border-width: 0px 1px 1px 0px;display: inline-block;/* padding值控制箭头大小 */padding: 5px; } ____________________________________.right {transform: rotate(-45deg…

浮动——案例

案例1——做出如下图的框架 提示&#xff1a;用ul li来完成 代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-sc…

KnowStreaming系列教程第一篇——安装和使用

KnowStreaming介绍 Know Streaming是一套云原生的Kafka管控平台&#xff0c;脱胎于众多互联网内部多年的Kafka运营实践经验&#xff0c;专注于Kafka运维管控、监控告警、资源治理、多活容灾等核心场景。在用户体验、监控、运维管控上进行了平台化、可视化、智能化的建设&#…

一份保姆级的Stable Diffusion部署教程,开启你的炼丹之路 | 京东云技术团队

市面上有很多可以被用于AI绘画的应用&#xff0c;例如DALL-E、Midjourney、NovelAI等&#xff0c;他们的大部分都依托云端服务器运行&#xff0c;一部分还需要支付会员费用来购买更多出图的额度。在2022年8月&#xff0c;一款叫做Stable Diffusion的应用&#xff0c;通过算法迭…

利用css实现渐变色(通俗易懂)

利用css实现渐变色 0、前言1、线性渐变2、径向渐变2.1 径向渐变2.1.1 圆形2.1.2 椭圆形 2.2 重复性径向渐变 3、边框颜色渐变3.1 边框渐变3.1.1 线性渐变3.1.2 径向渐变 3.2 单侧边框渐变3.2.1 底部边框线性渐变3.2.2 右侧边框线性渐变 4、扩展&#xff08;CSS线性渐变颜色网站…

vscode离线安装插件提示版本不兼容,安装失败的处理方法

因为公司是内网&#xff0c;无法在线下载插件&#xff0c;只能通过离线下载的方式安装插件&#xff0c;但是提示版本不兼容&#xff0c;安装失败&#xff0c;后面解决了&#xff0c;记录一下处理方法。 1. 首先查看vscode版本号 2. 将.vsix文件压缩 然后打开压缩文件&#x…

Lesson3-2:OpenCV图像处理---形态学操作

形态学操作 学习目标 理解图像的邻域&#xff0c;连通性 了解不同的形态学操作&#xff1a;腐蚀&#xff0c;膨胀&#xff0c;开闭运算&#xff0c;礼帽和黑帽等&#xff0c;及其不同操作之间的关系 1 连通性 在图像中&#xff0c;最小的单位是像素&#xff0c;每个像素周围…

springboot dubbo seata nacos集成 分布式事务seata实现

文章目录 Seata介绍dubbo介绍目标版本说明和代码地址pom.xml验证模块microservice-boot-commonmicroservice-boot- plat 验证结果注意事项 Seata介绍 官网&#xff1a;http://seata.io/zh-cn/docs/overview/what-is-seata.html Seata 是一款开源的分布式事务解决方案&#xff…

从零开始 Spring Boot 63:Hibernate 继承映射

从零开始 Spring Boot 63&#xff1a;Hibernate 继承映射 图源&#xff1a;简书 (jianshu.com) 关系型数据库设计中是不存在继承概念的&#xff0c;但实体类可以用继承来组织代码结构&#xff0c;所以需要用一种方式将实体类的继承结构映射到表结构。 本文将介绍几种在 JPA&a…

LCD1602显示屏只亮不显示字符

代码能在普中的板子能正常显示&#xff0c;但是换了块板子就不行&#xff1a; 调节显示屏下方的可调电阻 在调试中找到自己适合的值&#xff0c;就可以看见字符了

5、加载3dtileset模型并定位到模型

这一节使用CCesium加载3dtiles模型&#xff0c;3dtiles模型使用ceisum官网示例中的模型&#xff0c;加载3dtiles功能目前只能添加没有压缩的模型&#xff0c;draco或其他解压缩功能没有写。 1、在上一个例子的基础上&#xff0c;将鼠标事件改成右键的鼠标事件Cesium::ScreenSp…

科研热点|重磅!华为,唯一单位首发Nature!

今日&#xff0c;国际顶级学术期刊《自然》(Nature)杂志正刊发表了华为云盘古大模型研发团队研究成果——《三维神经网络用于精准中期全球天气预报》&#xff08;《Accurate medium-range global weather forecasting with 3D neural networks》&#xff09;。数据显示&#xf…

医学报告怎样翻译效果好?

我们知道&#xff0c;医学报告是医学翻译领域比较重要的一个项目&#xff0c;许多国际医学期刊和杂志都要求医学报告必须是英语的&#xff0c;促使医学报告翻译的需求量越来越大。那么&#xff0c;怎样翻译医学报告&#xff0c;医学报告中译英哪里比较专业&#xff1f; 据了解&…

Java类加载深度剖析-大白话

Java类加载深度剖析 1.类加载的入口2.AppClassLoader、ExtClassLoader、BootstrapClassLoader的血脉渊源3.ExtClassLoader究竟是不是孙大圣4.为什么自定义类加载器的父类加载器是AppClassLoader呢&#xff1f;5.我们应该如何打破双亲委派机制呢&#xff1f;6.如何保证同class对…

实现UDP通信

UDP通信的实现过程 write/read到send/recv 函数原型&#xff1a; ssize_t send(int sockfd, const void *buf, size_t len, int flags); ssize_t recv(int sockfd, void *buf, size_t len, int flags); 前三个参数同read/write一样&#xff1b; ssize_t read(int fd, void *bu…

滚珠螺杆的基本知识点

滚珠螺杆具有定位精度高、高寿命、低污染和可做高速正逆向的传动及变换传动等特性&#xff0c;因具上述特性&#xff0c;滚珠螺杆已成为近来精密科技产业及精密机械产业的定位及测量系统上的重要零组件之一。 滚珠螺杆主要由螺杆、螺帽、钢珠、固定座、刮刷器及回流管所构成的&…

thinkphp开发宠物领养商城系统 金融投资理财源码 中英文语言 支持增加多种语言

程序代码里面 除了线下支付&#xff0c;增加了4个线上支付方式 1、新增短信接口&#xff1a;短信宝、云片短信、网建短信。 2、新增阿里API实名认证&#xff0c;支持开启或关闭。 3、新增阿里API银行卡实名认证&#xff0c;支持开启或关闭。 4、新增项目分类开关、支付宝和微信…

基于springboot+vue框架的电影订票系统_wqc3k

随着网络科技的不断发展以及人们经济水平的逐步提高&#xff0c;计算机如今已成为人们生活中不可缺少的一部分&#xff0c;为电影订票方便管理&#xff0c;基于java技术设计与实现了一款简洁、轻便的管理系统。本系统解决了电影订票事务中的主要问题&#xff0c;包括个人中心、…