我们有一个网站,其中包含一个包含多个不同社交媒体服务(facebook、twitter、xing、linkedin)的共享链接的组件。现在我们希望移动版页面使用每个社交媒体服务的自定义协议(如果适用),以便单击任何链接都会打开相应的应用程序。
在谷歌上搜索了很长时间后,我们可以确认其中的三个协议。facebook 使用fb://
twitter 使用twitter://
linkedin 使用linkedin://
对于 xing 我们找不到任何东西,但它应该可能是xing://
,如果应用程序实际上支持自定义协议。
仍然完全不清楚的是完整的 URL 应该是什么样子。或者,如果共享功能实际上可以与自定义协议一起使用,因为我能找到的唯一示例就是打开个人或公司的脸书页面。还有这个使用whatsapp://
自定义协议的示例片段:
'whatsapp://send?text=' + {title} + ':%20' + {URL}
这是实际共享 URL 的样子({} 包含占位符)
'https://www.facebook.com/sharer/sharer.php?u=' + {URL} + '&t=' + {title}
'https://twitter.com/intent/tweet?source=' + {URL} + '&text=' + {title} + ':%20' + {URL}
'https://www.xing.com/spi/shares/new?url=' + {URL} + ';title=' + {title} + ':%20' + {}
'http://www.linkedin.com/shareArticle?mini=true&url=' + {URL} + '&title=' + {title} + ':%20' + {URL}
这是我根据上面列出的协议和whats app 的自定义协议片段提出的。基本上我只是用https://
协议替换了 并删除了域。
'fb://sharer/sharer.php?u=' + {URL} + '&t=' + {title}
'twitter://intent/tweet?source=' + {URL} + '&text=' + {title} + ':%20' + {URL}
'xing://spi/shares/new?url=' + {URL} + ';title=' + {title} + ':%20' + {}
'linkedin://shareArticle?mini=true&url=' + {URL} + '&title=' + {title} + ':%20' + {URL}
我在浏览器堆栈上做了一个简短的测试,但只打开了 facebook 应用程序,这并不一定意味着 URL 是正确的,因为我手头没有帐户。我会假设其他应用程序根本没有安装,所以我明天会尝试组织一个物理设备和社交媒体帐户。
如果有人能告诉我,如果我正朝着正确的方向前进,或者我是否要在我们想象中不可能的事情上花费相当长的时间,我将不胜感激。
编辑:在花了更多时间之后,我偶然发现了这篇文章:https ://stackoverflow.com/a/51239012/11891109 ,它适用于 facebook。但也请记住,当 facebook 更改他们的应用程序 ( https://stackoverflow.com/a/49881656/11891 )时,此解决方案可能随时中断。对于其他社交媒体服务,我们停止尝试,因为我们找不到更多信息。即使在fb://
协议的情况下,它也是一个未记录的功能。