Winjs 应用程序中的社交分享
Posted
技术标签:
【中文标题】Winjs 应用程序中的社交分享【英文标题】:Social sharing in Winjs application 【发布时间】:2014-07-04 02:12:55 【问题描述】:我正在尝试将社交分享功能(facebook、邮件等)添加到我的 winjs 应用程序,但找不到它的内置功能。
在 C#/VB 应用程序中,有 ShareLinkTask,但我在 winjs 中找不到它。应该可以,因为winjs可以访问手机功能。
【问题讨论】:
【参考方案1】:您必须首先获取当前视图的DataTransferManager
并为datarequested
事件添加一个侦听器。当此事件触发时,您可以指定要共享的数据。
var dataTransferManager =
Windows.ApplicationModel.DataTransfer.DataTransferManager.getForCurrentView();
dataTransferManager.addEventListener("datarequested", dataRequested);
...
function dataRequested(e)
var request = e.request;
request.data.properties.title = 'a title';
request.data.setText('Some text');
;
更多关于这个样本here...
要在应用中的任何位置显示共享功能,只需将点击事件的处理程序添加到元素并显示 UI。
document.getElementById("share").addEventListener("click", function ()
Windows.ApplicationModel.DataTransfer.DataTransferManager.showShareUI();
, false);
您可以在MSDN 找到分享其他内容(如 html)所需的所有信息。
【讨论】:
感谢您的回答和链接!在代码示例形成“code.msdn.microsoft.com/windowsapps/…”时,什么对我帮助最大。【参考方案2】:我猜你需要使用共享合同,以防你要使用 WinRT 应用程序。由于魅力栏不存在,你可能需要进行编码
Windows.ApplicationModel.DataTransfer.DataTransferManager.showShareUI();
function launchShare()
var shareButton = document.createElement("button");
shareButton.setAttribute("id", "showShareButton");
shareButton.innerText = "Click to share!";
shareButton.addEventListener("click", function ()
Windows.ApplicationModel.DataTransfer.DataTransferManager.showShareUI();
);
document.body.appendChild(shareButton);
请参考http://msdn.microsoft.com/en-in/library/windows/apps/hh464923.aspx
【讨论】:
以上是关于Winjs 应用程序中的社交分享的主要内容,如果未能解决你的问题,请参考以下文章