2010-11-13 22 views
5

Chciałbym uruchomić bezpośrednio do odtwarzacza YouTube na Windows Phone 7.Jak uruchomić URL YouTube na Windows Phone 7

Próbowałem za pomocą WebBrowserTask i podając adres URL YouTube, otwiera przeglądarkę i doprowadza mnie do strony z miniaturą filmu z YouTube, muszę kliknąć miniaturę przed odtworzeniem wideo.

Lubię pominąć dodatkowe kliknięcie. Podoba mi się, że użytkownik kliknie przycisk w mojej aplikacji i powinien bezpośrednio odtwarzać wideo. Czy jest jakiś sposób na zrobienie tego?

Odpowiedz

0

Nie. Mabe w następnej wersji systemu operacyjnego będzie niestandardowym wyborem i lunchem.

0

Aby wyświetlić wideo z serwisu YouTube, potrzebny jest odtwarzacz wideo dla serwisu YouTube. W przeciwnym razie musisz napisać niestandardowy dekoder, który odbierze strumień YouTube i wyświetli go w MediaElement.

0

Jak się przekonałeś, obecnie nie jest to możliwe.

Obecnie nie ma możliwości uruchomienia innej aplikacji, poza korzystaniem z Launchera lub Chooser.

W serwisie YouTube poszczególne filmy można skonfigurować do automatycznego odtwarzania. Nie jestem świadomy, jak to zmienić.

Jednak w telefonie jest inaczej. YouTube wykorzystuje Flash do odtwarzania filmów, ale Flash nie jest obecnie obsługiwany przez telefon. Filmy z YouTube można odtwarzać tylko po zainstalowaniu aplikacji YouTube. Po otwarciu witryny youtube za pomocą przeglądarki internetowej użytkownik musi kliknąć obraz, aby uruchomić odtwarzacz.
Jeśli strony internetowe były w stanie uruchomić aplikacje bez wcześniejszego działania użytkownika, może to być ogromny problem z zabezpieczeniami.

N.B. Aplikacja YouTube ma specjalne podwyższone uprawnienia, które nie są ogólnie dostępne, aby można ją było uruchomić w taki sposób, w jaki jest.

8

Po zainstalowaniu aplikacja Youtube, od wewnątrz ciebie aplikacji można rozpocząć WebBrowserTask i zrobić follwing:

 Regex Youtube = new Regex("youtu(?:\\.be|be\\.com)/(?:.*v(?:/|=)|(?:.*/)?)([a-zA-Z0-9-_]+)");    

     Match youtubeMatch = Youtube.Match(YOUTUBE_VIDEO_URL);   

     string id = string.Empty; 

     if (youtubeMatch.Success) 
      id = youtubeMatch.Groups[1].Value; 

     WebBrowserTask webBrowserTask = new WebBrowserTask(); 


     webBrowserTask.URL = "vnd.youtube:"+ id +"?vndapp=youtube_mobile"; 
     webBrowserTask.Show(); 

To powinno uruchomić przeglądarkę, a następnie automatycznie uruchomić aplikację YouTube. Twoje zdrowie!

+0

Dzięki! To działa dla mnie, czy istnieje sposób, aby wrócić do mojej aplikacji po zakończeniu wideo? –

+1

O ile wiem, jeszcze nie. Obecna opisana metoda jest tylko obejściem, a użytkownik musi nacisnąć dwukrotnie przycisk Wstecz, aby powrócić do aplikacji. Niestety, w tym momencie nie możemy monitorować lub dysponować jakąkolwiek metodą delegowania, która wskazywałaby, że film przestał być odtwarzany. – EdGs

+1

Właściwość URL jest przestarzała, a identyfikacja URI zajmuje tylko absolutny identyfikator URI, co zrobić w tym przypadku? –

1

spróbować użyć następujących próbki;

WebBrowserTask webBrowserTask = new WebBrowserTask(); 
    webBrowserTask.Uri = new Uri("http://www.youtube.com/embed/V3oJR5IAMxM?autoplay=1"); 
    webBrowserTask.Show(); 

Powinno to otworzyć wideo bezpośrednio, ale myślę, że będziesz musiał dwukrotnie kliknąć, aby powrócić.

+0

Welldone Teoman, to działało dla mnie. – jade

1

Istnieje na to rozwiązanie. Możesz użyć protokołu vnd.youtube, aby uruchomić aplikację YouTube od firmy Microsoft i grać.

C#

Windows.System.Launcher.LaunchUriAsync(

new System.Uri("vnd.youtube:9bZkp7q19f0") 

); 

Niestety metoda Launcher.LaunchUriAsync działa tylko z urządzeniami Windows Phone 8 i poza nią.

Powiązane problemy