Windows Phone 8.1应用程序在ShowShareUI()上崩溃

W.K*_*K.S 5 c# windows-phone-8.1

我正在尝试为我的Windows Phone应用添加共享功能.代码以不可预测的方式运行.有时它可以工作,但大多数情况下它没有,我无法获得有关导致崩溃的原因的任何细节.有人可以通过下面的代码告诉我,如果我错过了什么?谢谢!

public ArticlePage()
{
    this.InitializeComponent();
    //..
    RegisterForShare();
}

private void RegisterForShare()
{
    DataTransferManager dataTransferManager = DataTransferManager.GetForCurrentView();
    dataTransferManager.DataRequested += new TypedEventHandler<DataTransferManager,
        DataRequestedEventArgs>(this.ShareLinkHandler);
}

private void ShareLinkHandler(DataTransferManager sender, DataRequestedEventArgs e)
{
    DataRequest request = e.Request;
    DataRequestDeferral defferal = request.GetDeferral();

    request.Data.Properties.Title = this.article.Title;
    request.Data.Properties.Description = this.article.Summary;
    request.Data.SetWebLink(new Uri(this.article.UrlDomain));

    defferal.Complete();
}

private void ShareCommand_Click(object sender, RoutedEventArgs e)
{
        DataTransferManager.ShowShareUI();
}
Run Code Online (Sandbox Code Playgroud)

UPDATE

当我从visual studio调试时,代码总能正常工作,但绝不会这样.我做了一个发布版本,认为调试版本中可能有一些代码导致问题,但这没有任何区别.

Man*_*ani 1

好吧,我也有同样的问题。ShowShareUi 实际上会暂停您的应用程序。如果您尝试暂停您的应用程序,您会收到错误消息。其实就是序列化的问题。

如果您想查看错误,那么在调试时,按生命周期事件并暂停,您现在将在调试模式下崩溃。

在调试模式下挂起

如果您在具有自定义类的页面之间导航,则会出现错误。*我的建议是您将转换为jsonstring并发送和获取它。*