Есть ли способ воспроизвести потоковое видео YouTube из моей деятельности? - PullRequest
0 голосов
/ 04 ноября 2011

Где-то в моем приложении для Android я хотел бы воспроизвести видео на YouTube, в моей деятельности, в небольшом представлении. Я пытаюсь сделать это, используя VideoView , но пока безуспешно ..

Я написал простое упражнение, вот мой код:

public class MainView extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    VideoView videoView = (VideoView) findViewById(R.id.VideoView);
    MediaController mediaController = new MediaController(this);
    mediaController.setAnchorView(videoView);
    /*working good but IT'S NOT youtube*/ //Uri video = Uri.parse("http://commonsware.com/misc/test2.3gp"); 
    /*NOT WORKING*/ //Uri video = Uri.parse("http://www.youtube.com/watch?v=hLQl3WQQoQ0&ob=av2e");
    /*NOT WORKING (RTSP)*/ //Uri video = U-ri.parse("http://m.youtube.com/watch?gl=IL&hl=en&client=mv-google&feature=grec_mobile&v=6WHRxXY67UA");
    /*NOT WORKING (RTSP)*/Uri video = Uri.parse("http://m.youtube.com/watch?gl=IL&hl=en&client=mv-google&v=wWub_aXPCVg");
    videoView.setMediaController(mediaController);
    videoView.setVideoURI(video);
    videoView.start();
   }
}

это возможно? Есть ли другой компонент SDK, который может это сделать? есть идеи?

Спасибо, Amitos80 * ​​1010 *

Ответы [ 3 ]

0 голосов
/ 11 июля 2012

Google выпустит Android-компоненты для YouTube "в ближайшие месяцы", так что, надеюсь, к концу 2012 года.

Тем временем я использую WebView с loadData () и передаю IFrame, как указано на странице API YoUTube. Iframe довольно ограничен (большинство параметров даже не работают, например, control = 0), поэтому, если вам нужна большая гибкость, например, управление представлением, используйте JavaScript API и затем вставьте JavaScript в HTMl, который вы передаете в loadData.

Я попробовал Media Controller и не смог заставить его работать, хотя YouTube использовал его в своем собственном приложении.

Еще одна вещь, чтобы попробовать, что я не удосужился. Это использовать Google Search API. Вы можете указать видео на YouTube, и оно предоставит вам URL-адреса миниатюр, видео и т. Д. Таким образом, вы сможете получить доступ к необработанным файлам (www.youtube.com/...../..../myfile.3gp ) вместо вызова веб-страницы. Затем они могут быть загружены в MediaController.

0 голосов
/ 28 августа 2012

Вы можете просто использовать ссылку RTSP YouTube в видеовиде как:

    String myurl="rtsp://v4.cache4.c.youtube.com/CjYLENy73wIaLQk_ezfHQ9mvqRMYDSANFEIJbXYtZ29vZ2xlSARSBXdhdGNoYN-__7O28NSPUAw=/0/0/0/video.3gp";     

        Uri video = Uri.parse(myurl);
        mVideoView = new VideoView(this);           
        mVideoView.setVideoURI(video);
        myMediaController = new MediaController(this);

это работает просто для меня.

0 голосов
/ 04 ноября 2011

Если вы знаете, какое видео вы хотите просмотреть, вы можете просто создать Intent с URL-адресом и использовать его для запуска приложения Youtube. Вы можете увидеть это SO Post для более подробной информации.

...