更新记录
1.0.2(2026-09-15)
- iOS 打开系统分享面板后立刻返回
launched(与 Android 一致)。不再等到用户关掉面板,避免面板没弹出时 JS 一直挂起、点击无反应
1.0.1(2026-09-15)
- iOS 与 Android 一样把
_doc/_www转成绝对路径,再打开系统分享面板(业务侧缓存图不再弹 Please try again) - iOS 分享面板避开正在关闭的 loading 弹层,避免被 HUD 挡住或一起关掉
- 分享拷贝最多保留 20 张(先删超过 24 小时的,再按修改时间淘汰最旧的)
1.0.0(2026-09-15)
首个版本。
- Android 使用 FileProvider content URI 调用系统分享,高版本系统面板可预览缩略图
- iOS 使用 UIActivityViewController
- JPEG / PNG 原样分享;WebP / HEIC 等先转 JPEG 再发出,避免预览空白
- 可选直达 Facebook / Instagram(Android);未安装默认回退系统面板
平台兼容性
uni-app(4.27)
| Vue2 | Vue3 | Vue3插件版本 | Chrome | Safari | app-vue | app-nvue | Android | Android插件版本 | iOS | iOS插件版本 | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| - | √ | 1.0.0 | - | - | - | - | 5.0 | 1.0.0 | 13 | 1.0.0 | - |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - | - | - | - |
fz-social-share
1.0.2
把本地图片交给系统分享面板。Android 走 ACTION_SEND + FileProvider,iOS 走 UIActivityViewController。不接微信 / Facebook / Instagram SDK。
JPEG / PNG 原样发出;WebP / HEIC / GIF 先转 JPEG。单张不超过 30 MB、5000 万像素。
拷到 uni_modules 即可。UTS 必须打自定义基座或正式包。改原生代码后重新打基座。必须在用户点击里调用,不能在 onLoad 自动拉起。
环境
| 项 | 要求 |
|---|---|
| HBuilderX | 4.27+ |
| 工程 | uni-app Vue3 |
| Android | minSdk 21 |
| iOS | 13.0+ |
插件本身不申请权限。宿主若用 uni.chooseImage,在 manifest.json 开 Gallery,iOS 配 NSPhotoLibraryUsageDescription。
用法
import { shareImage } from '@/uni_modules/fz-social-share'
async function onShare(filePath) {
try {
const res = await shareImage({
imagePath: filePath,
target: 'system',
fallbackToSystem: true
})
// res.status === 'launched' 只表示面板已打开,不代表已发布
console.log(res)
} catch (e) {
uni.showToast({ title: e.errMsg || '分享失败', icon: 'none' })
}
}
imagePath 必须是本地路径(绝对路径、file://、content://、_doc / _www)。网络图先下载。示例页:pages/share/share。
API
shareImage(options: ShareImageOptions): Promise<ShareImageResult>
| 参数 | 默认 | 说明 |
|---|---|---|
imagePath |
必填 | 本地图路径 |
target |
'system' |
system / facebook / instagram。仅 Android 尝试直达,iOS 始终系统面板 |
fallbackToSystem |
true |
三方 App 不可用时回退系统面板。iOS 忽略 |
成功返回:
| 字段 | 说明 |
|---|---|
status |
两端都是 launched(面板已打开) |
requestedTarget |
调用时的 target |
route |
system 或 direct(仅 Android 直达成功) |
fallbackUsed |
是否从三方回退到系统面板 |
activityType |
iOS activity id,Android 为空 |
publishedConfirmed |
恒为 false |
message |
可读说明 |
失败 reject,errSubject === 'fz-social-share'。
错误码
| 码 | 含义 |
|---|---|
| 93201 | 路径或 target 无效 |
| 93202 | 读文件或写缓存失败 |
| 93203 | 空图、超限、无法解码 |
| 93204 | 指定 App 未安装且不允许回退 |
| 93205 | 没有前台页面 / 打不开面板 |
| 93206 | 正在准备分享,重复点击 |
| 93207 | iOS 不要把 fallbackToSystem 设为 false |
| 93208 | H5 / 非 App |

收藏人数:
购买普通授权版(
试用
赞赏(0)
下载 16
赞赏 0
下载 12731057
赞赏 1959
赞赏
京公网安备:11010802035340号