更新记录

1.0.0(2026-04-17)

  • 支持 Android 拉起系统邮件编辑器
  • 支持 Android 拉起系统短信编辑器
  • 支持 iOS 拉起系统邮件编辑器
  • 支持 iOS 拉起系统短信编辑器
  • 支持预填收件人、主题、正文、附件
  • 统一返回 opened、sent、saved、cancelled、failed 等结果

平台兼容性

uni-app(4.75)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
× × × × ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × × × ×

uni-app x(4.75)

Chrome Safari Android iOS 鸿蒙 微信小程序
× × × ×

austin-message

统一拉起 Android / iOS 系统邮件与短信编辑器,支持预填收件人、主题、正文、附件,并返回统一结果结构。

适用场景

  • 问题反馈邮件
  • 账单、合同、对账单邮件转发
  • 客服联系
  • 邀请短信
  • 故障日志上报

模板页

当前插件下的 index.vue 是完整模板页,按真实业务场景拆成:

  • 反馈邮件
  • 账单转发
  • 邀请短信

模板页不是按钮说明书,而是一个“系统消息工作台”,便于直接改字段测试。

manifest 配置

无需额外配置危险权限。

  • Android:插件内已集成 FileProvider,用于给邮件附件临时授权读取
  • iOS:无需额外权限声明

API

getMessageComposeCapabilities()

返回当前设备的系统消息编辑能力。

参数 说明 类型
supported 当前平台是否支持插件 Boolean
platform 平台标识 String
canComposeEmail 是否可拉起邮件编辑器 Boolean
canComposeSms 是否可拉起短信编辑器 Boolean
canAttachEmail 是否支持邮件附件 Boolean
canAttachSms 是否支持短信附件 Boolean
supportsHtmlEmail 邮件正文是否支持 HTML Boolean
notes 当前平台补充说明 String

composeEmail(options)

拉起系统邮件编辑器。

参数 说明 类型 默认值
to 收件人列表 String[] []
cc 抄送列表 String[] []
bcc 密送列表 String[] []
subject 邮件主题 String ''
body 邮件正文 String ''
isHtml 邮件正文是否按 HTML 处理 Boolean false
attachments 邮件附件列表 MessageComposeAttachment[] []
success 成功回调 Function -
fail 失败回调 Function -
complete 完成回调 Function -

composeSms(options)

拉起系统短信编辑器。

参数 说明 类型 默认值
recipients 短信收件人列表 String[] []
body 短信正文 String ''
attachments 短信附件列表 MessageComposeAttachment[] []
success 成功回调 Function -
fail 失败回调 Function -
complete 完成回调 Function -

MessageComposeAttachment

参数 说明 类型 默认值
path 附件路径,支持绝对路径、file://unifile://cache/... String ''
name 自定义附件名 String ''
mimeType 自定义 MIME 类型,邮件附件优先使用 String ''

mimeType 是文件类型标识,例如:

  • PDF:application/pdf
  • PNG:image/png
  • JPG:image/jpeg
  • 文本:text/plain

大多数常见文件可以不手动填写,插件会优先根据 name 或文件路径后缀自动推断。只有在文件没有标准后缀、后缀不准确,或你想强制指定附件类型时,才建议手动传入 mimeType

返回结构

composeEmailcomposeSms 使用同一套返回结构:

参数 说明 类型
ok 调用是否成功 Boolean
platform 平台标识 String
channel 通道,emailsms String
action 行为结果,可能为 opened / sent / saved / cancelled / failed String
errCode 错误码 Number
errMsg 错误说明 String

平台说明

  • Android:邮件通常返回 opened,表示已成功打开系统邮件客户端;当前版本优先支持单个邮件附件,短信当前版本不承诺附件能力
  • iOS:邮件依赖系统已配置邮箱账户;短信与邮件都能返回更明确的发送/取消状态

示例

import {
  getMessageComposeCapabilities,
  composeEmail,
  composeSms,
} from '@/uni_modules/austin-message'

const capabilities = getMessageComposeCapabilities()

composeEmail({
  to: ['support@example.com'],
  subject: 'App 问题反馈',
  body: '订单详情页切换网络后未刷新',
})

composeSms({
  recipients: ['***'],
  body: '你好,邀请你参加活动:https://example.com/invite',
})

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。