通过 Intent 分享 link 到 Vk 和 Facebook 时出现问题

Problems while sharing link to Vk and Facebook via Intent

我使用此代码通过 android 意图将 link 分享到我的应用程序:

Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
String lnk = "https://play.google.com/store/apps/details?referrer=utm_source=vk&utm_medium=share&utm_content=ASD23234343FFGGD&utm_campaign=ingame_share&id=com.my.super.app";
sendIntent.putExtra(Intent.EXTRA_TEXT, lnk);
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "Use this link to install my super app!");
sendIntent.setType("text/plain");
mainContext.startActivity(Intent.createChooser(sendIntent, "What to choose?"));

问题1

当安装在 Vkontakte 墙上的应用程序 Vk 接收到意图时,我看到我的 link 附近有一些吓人的图片。 这不是我的照片,根本不知道它是什么! 当我将包名称更改为另一个名称时,我看到了另一张尺寸相同的奇怪图片。我可以添加什么来摆脱这张奇怪的图片?或者至少给我的图片Vklink?

问题2

当 Facebook 墙上安装的应用程序 Facebook 接收到意图时,我看到我的 link 除了 id:

之外没有任何其他参数
http://play.google.com/store/apps/details?id=com.my.super.app

我试过 Uri.encode link,但它坏了。更改参数顺序也无济于事。有没有办法在 Facebook 上使用 referrer 参数分享 link? 如果我使用 share link:

也是一样
"http://www.facebook.com/sharer.php?u=" + Uri.encode(lnk) + "&t=" + Uri.encode(text)

但是如果我postlinkhttps://example.com/index.php呢?并添加所有参数,Facebook 保持 link 不变。它看起来像邪恶的生物不知何故讨厌 Google 玩并且不想允许它的推荐 links :) 除了重定向,有人知道如何管理这个吗?

  1. 谜底揭晓! google 播放页面缺少 og:img 元标记,因此 facebook 选择一张图片来显示,vk - 另一张(在我的例子中是某人的头像)

  2. Facebook 的抓取工具以特殊方式处理重定向和处理 GP link。也许有一种方法可以使用推荐参数共享 GP link,但我不知道。而是创建您自己的页面,设置正确的 Open Graph 元数据并将 GP 按钮放在上面。