APP和小程序互相跳转

更新日期: 2018-12-22阅读: 3k标签: app

随大流吧。微信小程序出了这么久,现在才学习下。app和小程序互相跳转:

1、App主动发起小程序卡片分享到微信,微信点击打开小程序,这时的小程序可以打开App

2、App主动发起打开小程序,这时的小程序可以打开App


目前主要就这两种方式吧,说是互相跳转好像不太妥当,毕竟App才是主动一方,小程序只能被动返回,类似于分享,App如果不发起分享到微信,微信是不能返回你的App的。说到这里大家应该都有一个印象了吧。 至于上面两种方式的实现方法也简单,只要把微信官网的代码复制过来就能用了。

 App主动分享小程序卡片(微信官网):小程序测试版不能分享

WXMiniProgramObject miniProgramObj = new WXMiniProgramObject();
miniProgramObj.webpageUrl = "http://www.qq.com"; // 兼容低版本的网页链接
miniProgramObj.miniprogramType = WXMiniProgramObject.MINIPTOGRAM_TYPE_RELEASE;// 正式版:0,测试版:1,体验版:2
miniProgramObj.userName = "gh_d43f693ca31f";     // 小程序原始id
miniProgramObj.path = "/pages/media";            //小程序页面路径
WXMediaMessage msg = new WXMediaMessage(miniProgramObj);
msg.title = "小程序消息Title";                    // 小程序消息title
msg.description = "小程序消息Desc";               // 小程序消息desc
msg.thumbData = getThumb();                      // 小程序消息封面图片,小于128k
 
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("webpage");
req.message = msg;
req.scene = SendMessageToWX.Req.WXSceneSession;  // 目前支持会话
api.sendReq(req);


App主动打开小程序(微信官网):

String appId = "wxd930ea5d5a258f4f"; // 填应用AppId
IWXAPI api = WXAPIFactory.createWXAPI(context, appId);
 
WXLaunchMiniProgram.Req req = new WXLaunchMiniProgram.Req();
req.userName = "gh_d43f693ca31f"; // 填小程序原始id
req.path = path;                  //拉起小程序页面的可带参路径,不填默认拉起小程序首页
req.miniprogramType = WXLaunchMiniProgram.Req.MINIPTOGRAM_TYPE_RELEASE;// 可选打开 开发版,体验版和正式版
api.sendReq(req);


WXEntryActivity中

public void onResp(BaseResp resp) {
    if (resp.getType() == ConstantsAPI.COMMAND_LAUNCH_WX_MINIPROGRAM) {
        WXLaunchMiniProgram.Resp launchMiniProResp = (WXLaunchMiniProgram.Resp) resp;
        String extraData =launchMiniProResp.extMsg; // 对应JsApi navigateBackApplication中的extraData字段数据
    }
}


小程序返回App就更简单了:

<button open-type="launchApp" app-parameter="wechat" binderror="launchAppError">打开APP</button>

另附:微信分享打开App:使用魔窗SDK实现,实际是网页打开App,苹果倒是可以直接打开App,安卓只能用网页打开分享再打开App。


链接: https://fly63.com/article/detial/1864

几种常见的APP开发模式的优缺点

常见的开发模式有6种(Native App,Web App,Hybrid App,Weex,React Native、Flutter)

在H5中唤起APP,唤起失败进入APP下载页

在H5中唤起APP原理:通过Scheme协议打开APP,Scheme的组成:scheme:path[#fragment],直接使用协议打开APP,打开失败进入下载页

创建一个成功的App前要考虑的5个要点

在智能机时代,相比浏览网页而言,人们一般更喜欢喜欢使用手机应用。这种趋势就导致了成千上万的APP在Google Play 和 Apple Store 平台的诞生。有一些企业想要通过创建APP去提升他们的业务,其他人也想要通过创建APP去获得收益

前端需要知道:App开发的最佳跨平台框架

当今移动端主要有安卓、IOS,以及最新的鸿蒙等系统,作为企业而言,尤其是中小企业在低成本的情况下,如何实现多端兼容,快速开发?这篇文章主要介绍当前比较常用的跨平台应用开发框架

前端实现iPhone绕过AppStore从浏览器安装App

都知道 iPhone 苹果手机应用只能通过 AppStore 进行安装,测试包只能通过官方提供的 TestFlight 等工具安装,而且通常有较长的审核流程,无法及时更新安装包

H5如何实现唤起APP

写过hybrid的同学,想必都会遇到这样的需求,如果用户安装了自己的APP,就打开APP或跳转到APP内某个页面,如果没安装则引导用户到对应页面或应用商店下载

ios获取app url地址 - 如何获取苹果appstore的应用链接?

在AppStore,每个应用都会有一个AppleID,包括还没有上线的应用。打开AppStore,点开我们的App,就会在网址上看到一串数字,这一串数字就是我们的Apple ID了。

一款 IOS 端休闲益智类,数字小游戏集

益智小游戏有哪些?休闲益智小游戏一直以来都深受玩家的喜爱,它不仅有趣,还能锻炼玩家的思维能力,今天小编就为大家带来了一款IOS益智数字类小游戏集,APP界面简洁,满足你的逻辑挑战,体验数字的魅力

H5 如何实现唤起 APP

写过hybrid的同学,想必都会遇到这样的需求,如果用户安装了自己的APP,就打开APP或跳转到APP内某个页面,如果没安装则引导用户到对应页面或应用商店下载。这里就涉及到了H5与Native之间的交互,为什么H5能够唤起APP并且跳转到对应的页面?

个人如何申请软著

目前软著已实行无纸化,不需要再邮寄纸质材料,但是之前需要邮寄的申请表还是需要盖章或签字电子版上传。实行无纸化之后的首批证书还没有下发,所以具体的下证率,加急的下证情况也都不清楚

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!