2015-10-07 1 views
2

Я пытаюсь открыть .mp4 видео с URL, как этотВоспроизведение видео с URL на леденец

Intent intent = new Intent(Intent.ACTION_VIEW); 
    Uri data = Uri.parse("https://yaddayadda/video.mp4"); 
    intent.setDataAndType(data, "video/*"); 


    if (intent.resolveActivity(context.getPackageManager()) != null) { 
     context.startActivity(intent); 
    } 

Это не работает на леденец, когда я пытаюсь открыть видео с помощью фотографий приложение Google (на Nexus это единственный вариант). На Киткате и других версиях Фотографии работают, только на Lollipop это не так.

Кто-нибудь знает, как воспроизвести видео на Lollipop с помощью приложения «Фотографии»?

+0

Пожалуйста, объясните, что означает «не работает». – CommonsWare

+0

Приложение Google Photos открыто, и есть сообщение о том, что я не могу воспроизвести это видео. Это происходит только на Lollipop, на Киткате, играет видео. – yasin

+0

Тогда вы не можете с этим поделать, кроме, возможно, попробуйте 'video/mp4' вместо' video/* '. – CommonsWare

ответ

0

для просмотра видео в вашей деятельности от использования ссылок этого кода:

// Declare variables 
ProgressDialog pDialog; 
VideoView videoview; 

// Insert your Video URL 
String VideoURL = "http://<video-url>"; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    // Get the layout from video_main.xml 
    setContentView(R.layout.videoview_main); 
    // Find your VideoView in your video_main.xml layout 
    videoview = (VideoView) findViewById(R.id.VideoView); 
    // Execute StreamVideo AsyncTask 

    // Create a progressbar 
    pDialog = new ProgressDialog(VideoViewActivity.this); 
    // Set progressbar title 
    pDialog.setTitle("Video"); 
    // Set progressbar message 
    pDialog.setMessage("Buffering..."); 
    pDialog.setIndeterminate(false); 
    pDialog.setCancelable(false); 
    // Show progressbar 
    pDialog.show(); 

    try { 
     // Start the MediaController 
     MediaController mediacontroller = new MediaController(
       VideoViewActivity.this); 
     mediacontroller.setAnchorView(videoview); 
     // Get the URL from String VideoURL 
     Uri video = Uri.parse(VideoURL); 
     videoview.setMediaController(mediacontroller); 
     videoview.setVideoURI(video); 

    } catch (Exception e) { 
     Log.e("Error", e.getMessage()); 
     e.printStackTrace(); 
    } 

    videoview.requestFocus(); 
    videoview.setOnPreparedListener(new OnPreparedListener() { 
     // Close the progress bar and play the video 
     public void onPrepared(MediaPlayer mp) { 
      pDialog.dismiss(); 
      videoview.start(); 
     } 
    }); 

} 

Если у вас нет активности для воспроизведения видео и хотят играть во внешнем проигрывателе вы можете использовать этот код:

public class MainActivity extends Activity implements OnClickListener { 

private Button btn; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    btn = (Button) findViewById(R.id.button1); 
    btn.setOnClickListener(this); 
} 

@Override 
public void onClick(View v) { 
    if (v.getId() == R.id.button1) { 
     Intent intent = new Intent(Intent.ACTION_VIEW); 

     intent.setDataAndType(Uri.parse("http://ur URL"), "video/*"); 

     startActivity(Intent.createChooser(intent, "Complete action using")); 
    } 

}