2014-05-15 31 views
0

我正在开发适用于Windows Phone 8的应用程序,并且我试图通过ShareMediaTask共享图像。 程序?我使用的是如下:分享媒体任务

private static Microsoft.Phone.Tasks.ShareMediaTask shareMediaTask; 



    public static void shareCurrentCroppedImage() 
    { 
     shareMediaTask = new Microsoft.Phone.Tasks.ShareMediaTask(); 
     GC.Collect(); 
     Debug.WriteLine("file path : {0}", currentFileName); 
     shareMediaTask.FilePath = currentFileName; 
     shareMediaTask.Show(); 
    } 

从控制台的路径是这样的:

文件路径:C:\ DATA \用户\公用\图片\保存的图片\ Lo_1.jpg

不幸的是,当我称这个过程(从按钮单击事件)应用程序关闭,黑屏显示,但突然工作流程返回到我的应用程序没有任何共享用户界面。我该如何解决这个问题?任何帮助,将不胜感激!

+0

你在设备上测试过吗?很多时候,这些问题都是仿真器特有的。 –

+0

是的,模拟器不工作,所以我总是只在设备上测试;) –

回答

1

这是为我工作的代码.. 我创造了一个PhotoChooserTask捕捉图像或从库中打开一个现有的图像,然后这个PhotoChooserTask完成时,我创建了一个ShareMediaTask和文件路径属性设置为“原始文件名“从参数光敏文件提交。 我认为你的代码的问题可能是这个图像的路径。

private void OnShareMediaTaskClicked(object sender, RoutedEventArgs e) 
    { 
     var photoChooserTask = new PhotoChooserTask { ShowCamera = true }; 
     photoChooserTask.Completed += OnPhotoChooserTaskCompleted; 
     photoChooserTask.Show(); 
    } 

    void OnPhotoChooserTaskCompleted(object sender, PhotoResult e) 
    { 
     var photoChooserTask = (PhotoChooserTask)sender; 
     photoChooserTask.Completed -= OnPhotoChooserTaskCompleted; 

     var shareMediaTask = new ShareMediaTask(); 
     shareMediaTask.FilePath = e.OriginalFileName; 
     shareMediaTask.Show(); 
    } 

我已将OnShareMEdiaClicked设置为按钮的onClick事件的处理程序。其余流程清晰。 希望这有助于。