问题 - >在Windows Phone 8.1 app中共享文件

时间:2015-05-14 10:58:51

标签: c# windows-phone-8

我们希望为我们的应用程序提供共享选项,以便我们可以将文件从SD卡上传到我们的应用程序,即类似于Onedrive / Notepad等中的共享选项。

在package.appxmainfest中,我们在声明中添加共享Target,并检查支持任何文件类型。在平板电脑的情况下它工作正常。对于手机而言,应用程序会在共享中列出,但是当我们选择我们的应用程序时,它会崩溃。

在选项卡上,当我们尝试共享时,它可以调用以下函数, protected override void OnShareTargetActivated(ShareTargetActivatedEventArgs args){}。此事件存在于app.xaml文件中 在手机的情况下,这个功能没有被调用,并且应用程序也崩溃了。

我们能否就如何解决崩溃问题提出一些建议,我们已按照Windows doc中提供的步骤进行操作。

添加代码段

protected override async void 
OnShareTargetActivated(ShareTargetActivatedEventArgs args)
  {
    var absoluteUri = "";
    var shareOperation = args.ShareOperation;
    if (shareOperation.Data.Contains(StandardDataFormats.WebLink))
    {
        var uri = await shareOperation.Data.GetWebLinkAsync();
        if (uri != null)
        {
            absoluteUri = uri.AbsoluteUri;
        }
    }
    //Notify shareOperation that we are completed as soon as possible
    shareOperation.ReportCompleted();

    var rootFrame = new Frame();
    rootFrame.Navigate(typeof(MainPage), absoluteUri);
    Window.Current.Content = rootFrame;
    Window.Current.Activate();
  }

0 个答案:

没有答案