钉钉分享到微信的卡片消息,iOS会立即转为链接?
目标:通过钉钉H5应用接入分享能力,分享到微信平台。 问题:微信Android平台可以实现卡片,iOS则会在消息发出瞬间从卡片转为链接。 结论:iOS比Android平台多了appId与URL的校验过程。 过程: 1、钉钉JS分享SDK本质上,使用的是微信分享NativeSDK进行,其中appId为钉钉企业主体,因此钉钉自有页面(URL:swform.dingtalk.com)分享都可以实现完美的卡片,因为此域名被配置在钉钉在微信的公众号JSSDK白名单里。 2、当JS分享的域名域名为非钉钉主体时,微信iOS会在分享完成后识别URL合法性,非钉钉主体则还原为链接。这也就是分享那一瞬间为卡片之后变为链接的奥秘。 3、我们可以在自己的钉钉H5应用中,将分享域名换为上述钉钉自有域名,则可以完美实现卡片能力。 因此,这个问题需要微信侧解决,解决办法有如下可能: 1、微信JSSDK白名单能力也支持ISV和接口能力,钉钉可以帮助H5开发者打通这个能力。 2、微信修复此能力,和Android策略保持一致。