如何实现从第三方APP直接跳转进入微信小程序

小程序已悄悄的开放了从外部跳转至小程序的入口,方便用户可以在微信外部浏览器或其他APP跳转至微信小程序。

大家先来体验一把 试一下爽不爽

外部直接跳转进入微信小程序的方法汇总

方法一:通过小程序scheme码跳转至小程序

优势:目前最优方案,所有场景都支持跳转至小程序,为你实现外部流量导入小程序

缺点:需要注册微信开放平台,申请第三方平台,然后利用接口获取URL Scheme,步骤比较多

通过服务端接口可以获取打开小程序任意页面的URL Scheme。适用于从短信、邮件、微信外网页等场景打开小程序。通过URL

外部跳转至小程序的解决方案

· 1 播放

Scheme打开小程序的场景值为 1065。生成的URL Scheme如下所示:weixin://dl/business/?t= *TICKET*iOS系统支持识别URL Scheme,可在短信等应用场景中直接通过Scheme跳转小程序。Android系统不支持直接识别URL Scheme,用户无法通过Scheme正常打开小程序,开发者需要使用H5页面中转,再跳转到Scheme实现打开小程序,跳转代码示例如下:location.href = 'weixin://dl/business/?t= *TICKET*'该跳转方法可以在用户打开H5时立即调用,也可以在用户触发事件后调用。调用上限Scheme将根据是否为到期有效与失效时间参数,分为短期有效Scheme与长期有效Scheme:

单个小程序每日生成Scheme上限为50万个(包含短期有效Scheme与长期有效Scheme)

有效时间超过31天的Scheme或永久有效的Scheme为长期有效Scheme,单个小程序总共可生成长期有效Scheme上限为10万个,请谨慎调用

有效时间不超过31天的Scheme为短期有效Scheme,单个小程序生成短期有效Scheme不设上限

注意事项

生成的URL Scheme仅支持从微信外打开小程序。微信内的网页如需打开小程序请使用微信开放标签-小程序跳转按钮,无公众号也可以直接使用小程序身份开发网页并免鉴权跳转小程序,见云开发静态网站跳转小程序。符合开放范围的小程序可以下发支持打开小程序的短信。

该功能基本覆盖当前用户正在使用的微信版本,开发者无需进行低版本兼容。

只能生成已发布的小程序的URL Scheme。

通过URL Scheme跳转到微信时,可能会触发系统弹框询问,若用户选择不跳转,则无法打开小程序。请开发者妥善处理用户选择不跳转的场景。

开放范围针对国内非个人主体小程序开放。VV直选IOS端就采用了URL Scheme跳转,大家可下载体验。示例使用了云开发静态网站托管搭建网页,无需公众号,只需准备好小程序和开通云开发。网页会判断所在的环境来觉得采用哪种跳转方式,如检测到微信客户端内,则免鉴权使用开放标签跳转,如检测到在外部浏览器或 App,则使用 URL Scheme 跳转小程序。示例网页地址:https://postpay-2g5hm2oxbbb721a4-1258211818.tcloudbaseapp.com/jump-mp.html详细代码示例和说明:云开发静态网站跳转小程序。

方法二:云开发静态网页免鉴权跳转静态网站

优势:1、免去小程序业务域名的配置;2、云开发有免费的CDN额度;3、简单粗暴,开发起来简单、UI组件微信官方自带,体验好

缺点:一些排斥云开发的可能望而却步

H5 跳小程序非个人主体并且已认证的小程序,使用云开发静态网站托管的网页,可以免鉴权跳转任意合法合规的小程序。即可以在微信内部浏览器的 H5 跳转小程序,也可以在微信外部浏览器或其他部分 App (如企业微信、QQ 等)跳转微信小程序。静态网站网页在微信客户端打开时,wx.config 可以传入小程序 AppID 并且不需计算签名,也就是免鉴权即可使用跳转小程序的能力。点此体验(将会跳转到微信官方的 "小程序示例" 小程序):https://postpay-2g5hm2oxbbb721a4-1258211818.tcloudbaseapp.com/jump-mp.html

注意,开通静态网站、绑定自定义域名,需要在「微信开发者工具 - 云开发 - 更多 - 静态网站」里进行,才能拥有免鉴权的能力。以下包含完整代码示例,包括 HTML 代码和云函数代码。示例无需准备公众号,只需准备好小程序和开通云开发以及云开发中的静态网站托管能力。网页会判断所在的环境来觉得采用哪种跳转方式,如检测到微信客户端内,则免鉴权使用开放标签跳转,如检测到在外部浏览器或 App,则使用 URL Scheme 跳转小程序。注意,以下代码中有以下内容必须替换,可以搜索 查看到所有需要替换的地方:

小程序 AppID:填入你的小程序 AppID

云开发环境 ID:填入你的开通了静态网站托管的云开发环境 ID

小程序原始账号 ID:填入你的小程序原始账号 ID(gh_ 开头)

小程序页面路径:填入要跳转到的小程序的页面路径

小程序名称:填入要跳转到的小程序名称

HTML: 点击下载

      打开小程序                                                                              正在打开 “填入你的小程序名称”...

                          打开小程序             
              点击以下按钮打开 “填入你的小程序名称”

                           
              请在手机打开网页链接

     
   
  云函数 public: 点击下载

新建一个云函数,名为 public,然后将其 index.js 设为以下内容:

在云开发控制台中的设置 -> 权限设置中,将对应开通了静态网站的云环境开启未登录模式访问

在云开发控制台中的云函数 -> 权限设置中,配置安全规则,选择 “允许所有用户访问” 的模板并确认。如果需要更安全的控制,即只让 public 函数开启未登录访问,可参见底部安全规则模板

// 云函数入口文件constcloud=require('wx-server-sdk') cloud.init()// 云函数入口函数exports.main=async(event,context)=>{  constwxContext=cloud.getWXContext()  switch(event.action) {    case'getUrlScheme': {      returngetUrlScheme(event.options)    }  }  return'action not found'}asyncfunctiongetUrlScheme(options) {  returncloud.openapi.urlscheme.generate({    jumpWxa: {      path:'/page/component/index',//     query:'',    },    // 如果想不过期则置为 false,并可以存到数据库  isExpire:true,    // 一分钟有效期  expireTime:parseInt(Date.now()/1000+60),  }) }可选的进阶的云函数安全规则模板(只放开了让 public 云函数支持未登录访问):{  "*":{    "invoke":"auth != null" },  "public":{    "invoke":true } }

外部跳转至小程序的解决方案

小太阳的视频

方法三:通过同一开放平台绑定的APP拉起小程序

优势:只要绑定在同一开发账号下,无需再配置

缺点:仅对绑定的app才可实现微信外部跳转,网页及其他app暂不不支持

大家可以申请认证微信开放平台,将app、小程序、网页进行统一绑定。考虑到部分场景下 APP 需要通过小程序来承载服务,为此 OpenSDK 提供了移动应用(APP)拉起小程序功能。

移动应用(APP)接入此功能后,用户可以在 APP 中跳转至微信某一小程序的指定页面,完成服务后再跳回至原 APP 。移动应用拉起小程序功能已向全体开发者开放,开发者在微信开放平台帐号下申请移动应用并通过审核后,即可获得移动应用拉起小程序功能权限。

跳转规则:1、对于已通过认证的开放平台账号,其移动应用可以跳转至任何合法的小程序,且不限制跳转的小程序数量。2、对于未通过认证的开放平台账号,其移动应用仅可以跳转至同一开放平台账号下小程序。注意:若移动应用未上架,则最多只能跳转小程序100次/天,用于满足调试需求。优点:无需前两个方法的各种配置缺点:只适合同一个开放平台的app跳转至小程序,未绑定的其他app无法实现跳转,简单地讲,需要白名单APP才可跳转。

你可能感兴趣的:(如何实现从第三方APP直接跳转进入微信小程序)