SampleVideoSupportFragment.java revision aa49439ba6276137f94fcdc1bf4f69b78833dad6
1aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata/* This file is auto-generated from OnboardingDemoFragment.java. DO NOT MODIFY. */ 2aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 3aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata/* 4aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * Copyright (C) 2016 The Android Open Source Project 5aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * 6aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except 7aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * in compliance with the License. You may obtain a copy of the License at 8aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * 9aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * http://www.apache.org/licenses/LICENSE-2.0 10aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * 11aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * Unless required by applicable law or agreed to in writing, software distributed under the License 12aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express 13aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * or implied. See the License for the specific language governing permissions and limitations under 14aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * the License. 15aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata */ 16aa49439ba6276137f94fcdc1bf4f69b78833dad6susnatapackage com.example.android.leanback; 17aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 18aa49439ba6276137f94fcdc1bf4f69b78833dad6susnataimport android.net.Uri; 19aa49439ba6276137f94fcdc1bf4f69b78833dad6susnataimport android.os.Bundle; 20aa49439ba6276137f94fcdc1bf4f69b78833dad6susnataimport android.support.v17.leanback.app.MediaPlayerGlue; 21aa49439ba6276137f94fcdc1bf4f69b78833dad6susnataimport android.support.v17.leanback.app.PlaybackGlue; 22aa49439ba6276137f94fcdc1bf4f69b78833dad6susnataimport android.support.v17.leanback.app.VideoSupportFragmentGlueHost; 23aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 24aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata/** 25aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * Fragment demonstrating the use of {@link android.support.v17.leanback.app.VideoSupportFragment} to 26aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata * render video with playback controls. 27aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata */ 28aa49439ba6276137f94fcdc1bf4f69b78833dad6susnatapublic class SampleVideoSupportFragment extends android.support.v17.leanback.app.VideoSupportFragment { 29aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata private MediaPlayerGlue mMediaPlayerGlue; 30aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 31aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata @Override 32aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata public void onCreate(Bundle savedInstanceState) { 33aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata super.onCreate(savedInstanceState); 34aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata } 35aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 36aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata @Override 37aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata public void onStart() { 38aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata super.onStart(); 39aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata } 40aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 41aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata VideoSupportFragmentGlueHost host = new VideoSupportFragmentGlueHost(SampleVideoSupportFragment.this); 42aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 43aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata @Override 44aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata public void onResume() { 45aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata super.onResume(); 46aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata getView().postDelayed(new Runnable() { 47aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata @Override 48aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata public void run() { 49aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue = new MediaPlayerGlue(getActivity(), null); 50aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setMode(MediaPlayerGlue.REPEAT_ALL); 51aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setPlayerCallback(new PlaybackGlue.PlayerCallback() { 52aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata @Override 53aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata public void onReadyForPlayback() { 54aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.play(); 55aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata } 56aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata }); 57aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setArtist("Leanback"); 58aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setTitle("Leanback team at work"); 59aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata String uriPath = "android.resource://com.example.android.leanback/raw/browse"; 60aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setMediaSource(Uri.parse(uriPath)); 61aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setHost(host); 62aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata } 63aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata }, 500); 64aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 65aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 66aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata getView().postDelayed(new Runnable() { 67aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata @Override 68aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata public void run() { 69aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue = new MediaPlayerGlue(getActivity(), null); 70aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setMode(MediaPlayerGlue.REPEAT_ALL); 71aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setPlayerCallback(new PlaybackGlue.PlayerCallback() { 72aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata @Override 73aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata public void onReadyForPlayback() { 74aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.play(); 75aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata } 76aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata }); 77aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setArtist("A Googler"); 78aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setTitle("Swimming with the fishes"); 79aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata 80aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setVideoUrl("http://techslides.com/demos/sample-videos/small.mp4"); 81aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata mMediaPlayerGlue.setHost(host); 82aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata } 83aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata }, 3000); 84aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata } 85aa49439ba6276137f94fcdc1bf4f69b78833dad6susnata} 86