解决6.5.16及以上版本微信内部M页不能唤起APP

栏目: IOS · Android · 发布时间: 5年前

内容简介:最近微信唤起app的数据急速下降,产品同学告诉我们大事来了,微信不能唤起Android的App了~!~!为提升微信 webivew 中网页打开其他应用的体验,防止诱导点击、强制跳出等不合理行为, 我们的“唤起外部客户端”的能力统一调整为:我们在接入微信的
解决6.5.16及以上版本微信内部M页不能唤起APP

最近微信唤起app的数据急速下降,产品同学告诉我们大事来了,微信不能唤起Android的App了~!~!

微信语录

为提升微信 webivew 中网页打开其他应用的体验,防止诱导点击、强制跳出等不合理行为, 我们的“唤起外部客户端”的能力统一调整为:

  • 1、 在 6.5.16 及以上版本的微信客户端中,贵方网页将只能使用 launchApplication 接口,打
    开其他应用。该接口会在唤起前要求用户接受弹窗确认。
  • 2、 在 6.5.16 以下版本的微信客户端中,贵方网页可以继续使用现有方式,打开其他应用。

解决版本

我们在接入微信的 opensdk 的时候会在自己项目代码中包含 xxx.xxx.xxx.wxapi.WXEntryActivity 这个页面。

在 6.5.16 及以上版本的微信客户端中,微信首先唤起的是 xxx.xxx.xxx.wxapi.WXEntryActivity 这个页面,将参数放在 extInfo 字段中,由第三方 APP 自行解析处理 ShowMessageFromWX.Req 的微信回调。

public class WXEntryActivity extends WXCallBack {
    @Override
    public void onReq(BaseReq req) {
        super.onReq(req);
        if (req != null && req instanceof ShowMessageFromWX.Req) {
            ShowMessageFromWX.Req request = (ShowMessageFromWX.Req) req;
            if (request.message != null && request.message.mediaObject != null
                    && request.message.mediaObject instanceof WXAppExtendObject) {
                WXAppExtendObject appExtendObject = (WXAppExtendObject) request.message.mediaObject;
                //唤起app的启动页面,将scheme协议中的数据进行透传
                Intent intent = new Intent(this, LaunchActivity.class);
                intent.setData(Uri.parse(appExtendObject.extInfo));
                startActivity(intent);
            }
        }
    }
}

微信官方具体描述我们可以参见: 微信webview唤起外部客户端接入说明2018版

总结

微信这样做,将微信与其下游的app的之前的影响继续加强。虽然我们做了不同的适配,但是同时能得到微信唤起app的成功或者失败的数据。在互联网产品竞争激烈的今天我们不仅仅要做好用户产品也好做好技术产品。

文章到这里就全部讲述完啦,若有其他需要交流的可以留言哦~!~!

想阅读作者的更多文章,可以查看我个人博客 和公共号:

解决6.5.16及以上版本微信内部M页不能唤起APP

以上所述就是小编给大家介绍的《解决6.5.16及以上版本微信内部M页不能唤起APP》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入浅出程序设计(中文版)

深入浅出程序设计(中文版)

Paul Barry、David Griffiths / 蒋雁翔、童健 / 东南大学出版社 / 2012-1 / 98.00元

《深入浅出程序设计(中文版)》介绍了编写计算机程序的核心概念:变量、判断、循环、函数与对象——无论运用哪种编程语言,都能在动态且多用途的python语言中使用具体示例和练习来运用并巩固这些概念。学习基本的工具来开始编写你感兴趣的程序,而不是其他人认为你应该使用的通用软件,并对软件能做什么(不能做什么)有一个更好的了解。当你完成这些,你就拥有了必要的基础去使用任何一种你需要或想要学习的语言或软件项目......一起来看看 《深入浅出程序设计(中文版)》 这本书的介绍吧!

html转js在线工具
html转js在线工具

html转js在线工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具