0

我正在尝试直接从我的应用程序上传视频。我正在使用很棒的 SDK MyToolkit,但有一些错误。

这是我的源代码:

protected override void OnBackKeyPress(CancelEventArgs e)
        {
            if (YouTube.CancelPlay())
                e.Cancel = true;
            base.OnBackKeyPress(e);
        }

        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            YouTube.CancelPlay(); // used to reenable page

            base.OnNavigatedTo(e);            
        }

        private void OnPlay(object sender, RoutedEventArgs args)
        {

            YouTube.Play(id, true, YouTubeQuality.Quality480P, e =>
            {
                if (e != null)


      MessageBox.Show(e.Message);
        });
    }

    private void btnYoutube_Tap(object sender, System.Windows.Input.GestureEventArgs e)
    {
        YouTube.Play(id, true, YouTubeQuality.Quality480P, ex => 
        {
            if (ex != null)
            {
                MessageBox.Show("...");
            }
        });
    }

此代码不会产生错误,但在打开视频链接时会出现以下消息:

“抱歉,我们无法在您的手机上播放此文件”

我在 xaml 中使用 YoutubeButton:

<Controls:YouTubeButton x:Name="btnYoutube" Tap="btnYoutube_Tap" Height="269"/>

MyToolkit 文档


我找到了问题的可能原因。我检查了其他视频,它们使用此代码完美运行。但是不能使用视频通道 VEVO。有谁知道这个问题的任何解决方案?


4

1 回答 1

0

恐怕这是 YouTube 的限制。不完全确定如何解锁它,但相当多的视频被标记为总部或带有“非移动”标志。某些频道也只允许在桌面查看和更改手机上的浏览器版本(移动与桌面)没有帮助。

甚至不确定是否可以从 Windows Phone 设备上传视频。

一个建议是查看 YouTube 开发者页面,看看是否有任何标签可以在上传时以编程方式设置。

于 2013-07-30T09:47:00.087 回答