App分享微信小程序功能介绍和业务方案分析

article/2025/9/27 6:54:43

今天微信小程序新增了支持跳转App的功能,算是一次比较大的突破,我也第一时间体验了一下该功能,App和小程序之间的跳转还是比较灵活的。

屏幕快照 2018-01-25 下午7.05.46.png

小程序支持打开移动应用

逻辑图

因为需要用户主动触发才能打开 APP,所以该功能不由 API 来调用,需要用 open-type 的值设置为 launchApp<button> 组件的点击来触发。

当小程序从 APP 分享消息卡片的场景打开时(场景值 1036,APP 分享小程序文档 iOS 参见,Android 参见),小程序会获得打开 APP 的能力,此时用户点击按钮可以打开分享该卡片的 APP。即小程序不能打开任意 APP,只能 跳回 分享该小程序卡片的 APP。

在一个小程序的生命周期内,只有在特定条件下,才具有打开 APP 的能力。 打开 APP 的能力 可以理解为由小程序框架在内部管理的一个状态,为 true 则可以打开 APP,为 false 则不可以打开 APP。

在小程序的生命周期内,这个状态的初始值为 false,之后会随着小程序的每次打开(无论是启动还是切到前台)而改变:

  • 当小程序从 1036(App 分享消息卡片) 打开时,该状态置为 true。
  • 当小程序从 1089(微信聊天主界面下拉)或 1090(长按小程序右上角菜单唤出最近使用历史)的场景打开时,该状态不变,即保持上一次打开小程序时该状态的值。
  • 当小程序从非 1036/1089/1090 的场景打开,该状态置为 false。

使用方法

iOS

下载最新的微信SDK,或使用CocoaPods更新。

分享微信小程序:

屏幕快照 2018-01-25 下午7.32.50.png

  1. 第一个字段WebpageUrl为备用链接,兼容低版本的微信客户端
  2. userName为小程序的原始id,可以在小程序中查看
  3. path为小程序中页面路径
  4. Description为描述,等同于小程序中onShareAppMessage方法中的title
  5. ThumbImage和hdImageData为分享图片的信息,需要小于128k,因此在分享前需要先下载要分享的图片,并压缩,最后resize到500*400(小程序卡片图片要求比例是5比4)
- (void)downloadCoverImage{SDWebImageManager *manager = [SDWebImageManager sharedManager];__weak typeof(self) weakSelf = self;[manager loadImageWithURL:self.item.itemCover.urloptions:0progress:^(NSInteger receivedSize, NSInteger expectedSizem, NSURL *targetUrl) {//NSLog(@"receiveSize:%ld,expectedSize:%ld",(long)receivedSize,(long)expectedSize);}completed:^(UIImage *image,NSData *data, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {if (image) {NSData *imageData = UIImageJPEGRepresentation(image, 0.1);weakSelf.hdImageData = UIImageJPEGRepresentation(image, 0.1);weakSelf.thumbImage = [[[UIImage alloc]initWithData:data] scaledToSize:CGSizeMake(500, 400)];weakSelf.shareImage = [[[UIImage alloc]initWithData:imageData] scaledToSize:CGSizeMake(100, 100)];}}];self.sharestr = [NSString stringWithFormat:@"只需%@元,广州女装源头货,买手精选,一件起批,赶紧来上新进货吧!",self.item.salePrice];}
  1. withShareTicked为YES时,是否带shareTicket,可以通过wx.getShareInfo方法获取群对当前小程序的唯一ID(OpenGid)
  2. miniProgramType表示小程序类型,0是正式版,1是开发版,2是体验版

分享效果:

 

131516879901_.pic.jpg

小程序端

需要将 <button> 组件 open-type 的值设置为 launchApp。如果需要在打开 APP 时向 APP 传递参数,可以设置 app-parameter 为要传递的参数。通过 binderror 可以监听打开 APP 的错误事件。

<button open-type="launchApp" app-parameter="itemId=12345&userId=1234" binderror="launchAppError">打开APP</button>

若分享成功后,微信唤起App,并传递app-parameter参数到App:

 

App中处理微信小程序传递参数

在App中添加WXApiDelegate中的onReq方法,处理参数。

如果唤起App失败,在binderror对应的方法中处理唤起失败后的逻辑:

Page({ launchAppError: function(e) { console.log(e.detail.errMsg) } 
})

如果是没有安装App,可以使用wx.previewImage的方法弹出引导关注公众号的图片文案。

 

未命名.gif

都知道从公众号文章或者底部菜单是可以调转到小程序的,从小程序是不可以调转回公众号的,从上面的动画中,你有没有发现亮点?这里有个小技巧,在微信小程序中长按previewImage打开的图片,是可以识别二维码的,接着直接跳转到公众号!

同学们不要开心的太早,这个功能不是每次都能实现的,有兴趣的可以自己试一下。



作者:SamDing
链接:https://www.jianshu.com/p/db3d3ddc21d2
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。


http://chatgpt.dhexx.cn/article/RsZZMxfV.shtml

相关文章

iOS从APP中分享出小程序详解

移动应用分享功能支持小程序类型分享,要求发起分享的App与小程序属于同一微信开放平台帐号。支持分享小程序类型消息至好友会话,不支持“分享至朋友圈”及“收藏”。 微信客户端版本要求:6.5.6及以上微信客户端版本。为兼容旧版本客户端,若客户端版本低于6.5.6,小程序类型…

APP分享微信小程序

APP可以分享小程序到微信对话框中&#xff0c;还能设置具体的跳转页面&#xff0c;下面介绍一下开发流程 1.APP绑定小程序 打开微信开放平台&#xff0c;登录APP的微信开放账号&#xff0c;在管理中心找到APP设置。点击小程序类目&#xff0c;绑定小程序。 绑定的时候需要登…

读取身份证UID

利用libnfc库读取&#xff1a; 原材料: ubuntu16.04 串口线CP2103或CP2102PN532模块 有些pn532匹配电路不对读不到 学习第一步破解M1卡&#xff1a; http://note.youdao.com/noteshare?id20e0e8130f40c30720eb346aefa546d3&subA1DCD4B0D6D8405EB53468E7511694DC 学习第…

c# winform 身份证信息读取

二代身份证信息读取源码分享 上软件运行界面&#xff1a; 温馨提示&#xff1a;运行程序别忘了装驱动哦&#xff01; 上完整源码。界面可以自己画&#xff01; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using Syste…

二代身份证读取-微调版

说起微调其实就是对 上一篇文章 今天意外和身份证结缘 中提到的代码码放和调用一些巧妙的用法&#xff08;至少小鬼觉得很有意思很巧妙&#xff09;。 为什么有必要在写一篇 写的理由千千万&#xff1b;不写的理由万万千。对于小鬼来说就是&#xff1a;我吃饱了,撑着了&#x…

读取身份证信息系统的程序编写

文章目录 前言一、需要实现什么样的功能&#xff1f;二、编写过程 1.逻辑分析2.实操展示总结 前言 在网络诈骗的宣传过程中&#xff0c;常常提到不要去泄露自己的身份证号码&#xff0c;为什么呢&#xff1f;知己知彼&#xff0c;方能不被受骗&#xff0c;下面是对读取身份证信…

二代身份证读写器原理及开发

身份证读写器的作用就是从身份证中读取身份信息&#xff08;例如姓名、民族、身份证号等&#xff09;&#xff0c;然后显示或者传输给其他模块使用。功能框架如下&#xff1a; 功能框图说明&#xff1a; 1 业务模块。负责向安全模块发送命令&#xff0c;操作安全模块进行对应的…

身份证的验证和读取

身份证的验证和读取 开发工具与关键技术&#xff1a;Visual Studio 2015、C#.WPF 作者&#xff1a;周水生 撰写时间&#xff1a;2019年6月2日 首先我们说明一下身份证数字代表的意思&#xff1a; &#xff08;1&#xff09;前1、2位数字表示&#xff1a;所在省份的代码&#…

添加身份证读取窗口

实现功能&#xff1a;点击读取身份证会弹出身份证识别窗口&#xff0c;读取到数据后&#xff0c;回传用户选择是否替换原先数据。 效果演示 1.读取身份证的弹窗 src\components\idCard.vue <template><el-dialogtitle"读取身份证信息":close-on-click-mo…

基于华视身份证读卡器读取身份证信息的Android demo

项目概述 本Demo需要华视的身份证读卡器&#xff0c;连接Android机器设备&#xff0c;当身份证读卡器读取到身份证信息后&#xff0c;立马展示出身份证信息数据。得到身份证的姓名、照片、出生年月等数据。 项目概述 本Demo需要华视的身份证读卡器&#xff0c;连接Android机…

【Python 身份证JSON数据读取】——身份证前六位地区码对照表文件(最全版-JSON文件)

点个赞留个关注吧&#xff01;&#xff01; 1、生成身份证前六位地区码对照表JSON文件 2、python 读取JSON文件 提取码【1234】 json文件下载 废话不多说&#xff0c;先上效果图 一、生成身份证json数据文件 先去百度搜索地区身份证号码前6位查询 ,然后进入网站控制台界面&…

VUE实现华视身份证阅读器读取身份证信息(本文分两种情况,第一中是点击按钮读取信息,一种是自动读取信息)

本文是用了vueelement来实现华视身份证读卡器读取身份信息的&#xff0c;当然在开发之前要做好前提准备&#xff0c;就是厂家提供对应设备的api和安装对应的驱动。本文通过两种方法来实现读取信息&#xff0c;第一种是点击按钮读取信息&#xff0c;第二种是卡片放上去会自动读取…

身份证读取设备开发解决方案:2、Android下通过usb转串口读取身份证信息

身份证读取设备开发解决方案&#xff1a;2、Android下通过usb转串口读取身份证信息 文章目录 身份证读取设备开发解决方案&#xff1a;2、Android下通过usb转串口读取身份证信息1. 前言2. 准备3. android下读取身份证信息的demo3.1 部分源码3.2 碎片代码3.3 结果展示3.4 注意点…

自动化神器!Python 批量读取身份证信息写入 Excel

今天分享一个实用技能&#xff0c;利用 Python 批量读取身份证信息写入 Excel。 读取 以图片形式的身份证为例&#xff0c;信息读取我们使用百度文字识别OCR来实现&#xff0c;百度接口提供了免费额度&#xff0c;日常使用基本差不多够了&#xff0c;下面来具体看一下如何使用…

浏览器使用华视电子设备读取身份证信息

项目中用到了使用华视电子CVR-100U、CVR-100D设备读取身份证的设备在浏览器上读取身份证信息&#xff0c;在浏览器使用时&#xff0c;需要安装浏览器的运行的插件&#xff0c;否则设备不好用。 sdk下载方式在文章最后 此控件支持IE、360浏览器、360极速浏览器等浏览器 暂不支持…

身份证读取设备开发解决方案:3、单片机读取身份证信息的demo

身份证读取设备开发解决方案&#xff1a;3、单片机读取身份证信息的demo 文章目录 身份证读取设备开发解决方案&#xff1a;3、单片机读取身份证信息的demo一、前言二、部分代码及结果展示1. 准备2. 部分代码3. 结果展示 三、常见错误错误1错误2 四、注意事项1. 确认串口线焊接…

身份证阅读器读卡器React网页方法实现身份证的读取

支持产品型号东信EST-100GS谷歌版本身份证读卡器USB免驱接口&#xff0c;支持谷歌火狐360 IE 遨游 搜狗 等等多种web浏览器使用。 官方网址&#xff1a;www.eastcoms.com 以下为React源码示例&#xff1a; import React, {PureComponent} from react; import "./agreemen…

身份证读取

在找读取身份证动态库&#xff08;dll&#xff09; 文件时&#xff0c;发现这么一篇好文章&#xff0c;有兴趣学习一下&#xff01; ---------------- 这份代码&#xff0c;主要是根据api文档来写的&#xff0c;文档上提供了各个方法的使用说明&#xff0c;并且有一个示例代码。…

身份证读取设备开发解决方案:1、Windows下开发Qt程序demo读取身份证信息

身份证读取设备开发解决方案&#xff1a;1、Windows下开发Qt程序demo读取身份证信息 文章目录 身份证读取设备开发解决方案&#xff1a;1、Windows下开发Qt程序demo读取身份证信息1. 前言2. 身份证读取模块3. Qt5开发简单上位机读取身份证信息1. 注意的点2. 部分源码3. 结果展示…

最新web/java/jsp实现发送手机短信验证码和邮箱验证码的注册登录功能(详细)

最新web/java/jsp实现发送手机短信验证码和邮箱验证码的注册登录功能&#xff08;详细&#xff09; 最近几天有人需要帮忙做一个关于发送验证码的功能&#xff0c;之前没有做过&#xff0c;于是我鼓捣一阵子&#xff0c;记录一下关于web项目中注册登录常用的手机验证码和邮箱验…