返回

2021年微信分享埋坑记录

IOS

2021年初,着手整合友盟分享,记录一下遭遇的糟心之处。根据官方文档和网上的诸多文章进行了整合,没有遇到任何问题。然而,在测试分享的时候,却是状况频出。

一、分享标题显示不全

按照友盟文档,分享标题是设置在 UMShareMessage 对象中的 title 属性。按照提示设置后,分享出去的标题却只显示了一半。

UMImage image = new UMImage(MainActivity.this, R.drawable.ic_launcher);
UMWeb web = new UMWeb(url);
web.setTitle("这是标题");
web.setDescription("这是");
web.setThumb(image);
UMusic music = new UMusic(url);

经过一番排查,发现友盟并没有截断标题,而是微信在显示的时候截断了。

解决办法:将分享标题控制在32个字符以内,避免被微信截断。

二、分享链接无法访问

分享的链接无法访问,可能是由于友盟设置的 shortUrl 出了问题。

解决办法:使用微信原生分享,或者自行设置短链接。

三、分享图片显示不出来

分享图片显示不出来,可能是由于图片的尺寸不符合微信的要求。

解决办法:分享的图片尺寸应为 120px * 120px。

四、分享到朋友圈失败

分享到朋友圈失败,可能是由于没有配置 UMShareListener

解决办法:在分享之前,设置 UMShareListener,并在回调中处理分享结果。

五、分享到 QQ 失败

分享到 QQ 失败,可能是由于没有配置 QQ 的 appId

解决办法:在 Manifest.xml 中配置 QQ 的 appId

六、分享到微博失败

分享到微博失败,可能是由于没有配置微博的 appIdappKey

解决办法:在 Manifest.xml 中配置微博的 appIdappKey

七、分享到 Facebook 失败

分享到 Facebook 失败,可能是由于没有配置 Facebook 的 appId

解决办法:在 Manifest.xml 中配置 Facebook 的 appId

八、分享到 Twitter 失败

分享到 Twitter 失败,可能是由于没有配置 Twitter 的 consumerKeyconsumerSecret

解决办法:在 Manifest.xml 中配置 Twitter 的 consumerKeyconsumerSecret

九、分享到 Instagram 失败

分享到 Instagram 失败,可能是由于没有配置 Instagram 的 clientId

解决办法:在 Manifest.xml 中配置 Instagram 的 clientId

十、分享到 Pinterest 失败

分享到 Pinterest 失败,可能是由于没有配置 Pinterest 的 appId

解决办法:在 Manifest.xml 中配置 Pinterest 的 appId

总之,使用友盟分享功能时,需要注意以上这些坑,并根据实际情况进行相应的解决。