2017-01-17 43 views
5

Tôi mở một đoạn video youtube từ ứng dụng của tôi, tương tự với câu trả lời này: https://stackoverflow.com/a/12439378/379865mở youtube video tại một thời gian cụ thể sử dụng android ý định

Tôi đã tự hỏi nếu nó có thể mở video tại một thời điểm nhất định, vì vậy cho Ví dụ có video chạy từ 30 giây lúc bắt đầu, không phải từ đầu.

+4

Tôi nghĩ rằng khi bạn chia sẻ video Youtube tại một thời điểm cụ thể những thay đổi liên kết, vì vậy bạn có thể cần phải thay đổi liên kết đến video cho phù hợp. – Lehue

Trả lời

7

YouTube có cách tuyệt vời để chỉ thời gian trong URL của họ cho video.

Các Intent sẽ giống như thế startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=Z149x12sXs" + time))); nơi String time = "&t=0m30s";

Sửa: Mở rộng cho ứng dụng YouTube.

public static void watchYoutubeVideo(String id, String time){ 
    Intent appIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("vnd.youtube:" + id + time)); 
    Intent webIntent = new Intent(Intent.ACTION_VIEW, 
       Uri.parse("https://www.youtube.com/watch?v=" + id + time)); 
    try { 
     startActivity(appIntent); 
    } catch (ActivityNotFoundException ex) { 
     startActivity(webIntent); 
    } 
} 

Sử dụng câu trả lời khác từ câu hỏi đó. Cùng một logic có thể được áp dụng cho bất kỳ mục đích nào chỉ cần thêm chuỗi Time vào URI như được hiển thị ở trên bất kể ý định.

+0

Tính năng này hoạt động khi bắt đầu video trong trình duyệt. Tôi cần kiểm tra khi sử dụng ứng dụng YT. Cảm ơn – Alin

+0

đã thêm bản chỉnh sửa để mở rộng cho người dùng trong tương lai. –

+0

Đối với tôi, bằng cách sử dụng cách 'vnd.youtube' trên Android 5 không hoạt động. Nó mở ứng dụng youtube nhưng không tải được video. Tuy nhiên, mở bằng webIntent hoạt động, ngay cả khi lựa chọn từ menu để mở bằng ứng dụng YouTube. – Alin

Các vấn đề liên quan