聊天素材支持微信小程序打开

从基础库 2.14.3 开始支持

支持平台:iOS、Android

客户端版本:通过 webview 打开微信小程序需要升级到微信 7.0.22 及以上版本,通过文件和视频打开微信小程序需要升级到微信 8.0.0 及以上版本,通过图片打开微信小程序需要升级到微信 8.0.1 及以上版本

支持类型:仅微信小程序,小游戏暂不支持

功能介绍

在微信聊天中打开素材时,增加了使用微信小程序打开的入口。用户可以通过微信小程序处理聊天中的文件、图片、视频和 webview(包括公众号文章)。例如,用微信小程序将文件存储到网盘、给图片加滤镜、进行视频剪辑,或者将 webview/公众号文章保存到笔记等。目前,只有不带二维码的图片支持直接通过微信小程序打开。

当用户在微信聊天中打开素材时,如果微信小程序配置了支持打开该类型的素材并通过审核,并且用户曾经使用过该微信小程序,那么在打开该类型素材时,就会出现使用微信小程序打开的入口。

在 PC 端基础库大于 3.7.6 的环境下,用户可以通过拖入文件的方式来触发微信小程序打开。当拖入符合规则的文件后,框架侧将会重新启动(reLaunch)微信小程序。如果拖入不符合规则的文件,框架侧会提示用户该文件不支持。

使用说明

开发者需要在微信小程序的全局配置(app.json)中声明支持打开的文件类型,并且对一种文件类型只能声明一种处理方式。

{
    "supportedMaterials": [
        {
            "materialType": "text/html",
            "name": "用${nickname}打开",
            "desc": "描述",
            "path": "pages/index/"
        },
        {
            "materialType": "video/*",
            "name": "用${nickname}播放",
            "desc": "描述",
            "path": "pages/index/"
        },
        {
            "materialType": "video/mp4",
            "name": "用${nickname}播放",
            "desc": "描述",
            "path": "pages/index/"
        }
    ]
}
属性 类型 必填 描述
materialType String 支持文件类型的MimeType,音频和视频支持二级配置的通配模式,例如:video/*。如果通配模式配置和精确类型配置同时存在,则优先使用精确类型的配置(例如,video/*video/mp4同时存在时,会优先使用video/mp4的配置)。
name String 开发者配置的标题,在素材页面会展示该标题。配置中必须包含${nickname},代码包编译后会自动替换为微信小程序名称,如果声明了简称则会优先使用简称。除去${nickname},其余字数不得超过6个。
desc String 用途描述,会在推荐列表中展示该描述,限定字数不超过22个。
path String 在该场景下打开微信小程序时跳转的页面

最新客户端版本支持的MimeType类型:

MimeType 文件后缀 说明
video/* 视频类文件
audio/* 音频类文件
image/* 图片类文件
text/html webview(包括公众号文章)
text/plain .txt
application/* 通用文件配置
application/pdf .pdf
application/msword .doc
application/vnd.openxmlformats-officedocument.wordprocessingml.document .docx
application/vnd.ms-word.document.macroEnabled.12 .docm
application/vnd.ms-excel .xls
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet .xlsx
application/vnd.ms-excel.sheet.macroEnabled.12 .xlsm
application/vnd.ms-powerpoint .ppt
application/vnd.openxmlformats-officedocument.presentationml.presentation .pptx
application/zip .zip
application/vnd.rar .rar
application/x-7z-compressed .7z
application/x-photoshop .psd
application/acad .dwg
application/x-cdr .cdr
application/dxf .dxf
application/step .stp
application/rtf .rtf
application/postscript .ai

微信小程序启动参数

微信小程序的启动参数中,场景值为1173。在该场景下,启动参数和 query 同一级有一个数组forwardMaterials,代表转发的文件信息。数组中的每一个对象包含属性{type, name, path, size},分别代表文件类型、文件名、文件路径或 URL、文件大小。

发布

微信小程序提审时,会审核声明的supportedMaterials是否合规。微信小程序发布上线后,相应文件类型的打开入口才会出现微信小程序。

如果微信小程序实现的功能价值较低,将不会通过审核,包括但不限于以下情况:

  1. 打开微信小程序后的功能与对应的素材没有任何关系:只是通过这个入口打开了微信小程序,而没有对素材做任何处理。
  2. 打开微信小程序后处理素材的方式过于简单:比如只是播放视频或只是查看.docx文件等,这些通过微信聊天就能实现的简单功能。

请开发者结合自身微信小程序的功能与用户需求进行适配。

调试

体验版

体验版微信小程序支持单独配置supportedMaterials,与正式版的微信小程序配置相互独立。上述相应的入口微信小程序列表也会单独展示体验版微信小程序。

开发者工具

开发者可以在自定义编译模式下,通过场景值1173来调试该功能。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注