Khi nội dung đang truyền đến Trình nhận web, người dùng phải luôn kiểm soát được nội dung đó từ ứng dụng của người gửi.
Lưu ý: Theo Điều khoản dịch vụ bổ sung dành cho nhà phát triển của SDK Google Cast, ứng dụng nội dung nghe nhìn được truyền phải sử dụng API điều khiển Play (Thông báo phát nội dung đa phương tiện) được xác định cho SDK để điều khiển việc phát nội dung nghe nhìn trên Bộ thu trên web.
Ứng dụng người gửi cần cung cấp tính năng Điều khiển truyền ở những khu vực sau:
- Hộp thoại truyền trong khi truyền
- Kiểm soát số lượng người gửi
- Bộ điều khiển mở rộng dành cho người gửi
- Bộ điều khiển mini của người gửi
- Thông báo của người gửi
- Màn hình khoá của người gửi
Các nút điều khiển và trạng thái phát của ứng dụng gửi trên các khu vực này phải đồng bộ với các thay đổi về việc phát diễn ra trên Trình thu nhận web, ngay cả khi ứng dụng gửi không phát sinh từ đó. Điều này cho phép xử lý đúng cách cả lệnh của nhiều người gửi và bộ điều khiển phát từ các nút, điều khiển từ xa, v.v. của thiết bị.
Android
Điều khiển hộp thoại truyền
![](https://developers.google.cn/static/cast/images/a/sender-cast-menu-active1.png?authuser=8&hl=vi)
Bộ điều khiển mini
![](https://developers.google.cn/static/cast/images/a/sender-persistent-control1.png?authuser=8&hl=vi)
Kiểm soát thông báo
![](https://developers.google.cn/static/cast/images/a/sender-control-notification1.png?authuser=8&hl=vi)
Khóa đ.khiển m.hình
![](https://developers.google.cn/static/cast/images/a/sender-control-lockscreen1.png?authuser=8&hl=vi)
iOS
Điều khiển hộp thoại truyền
![](https://developers.google.cn/static/cast/images/i/sender-cast-menu-active1.png?authuser=8&hl=vi)
Bộ điều khiển mini
![](https://developers.google.cn/static/cast/images/i/sender-persistent-control1.png?authuser=8&hl=vi)
Chrome
Điều khiển hộp thoại truyền
![](https://developers.google.cn/static/cast/images/w/sender-cast-menu-active1.jpg?authuser=8&hl=vi)
Bộ điều khiển mini
![](https://developers.google.cn/static/cast/images/w/sender-persistent-control1.jpg?authuser=8&hl=vi)
Các chế độ kiểm soát số lượng người gửi
Ứng dụng của người gửi phải cho phép người dùng điều khiển âm lượng nội dung phát trên TV hoặc loa, bằng cách sử dụng các nút âm lượng phần cứng và/hoặc thanh trượt âm lượng phần mềm trên thiết bị gửi. Những chế độ cài đặt này kiểm soát một trong những việc sau:
- Mức âm thanh gửi đến TV đối với các thiết bị Google Cast như Chromecast.
- Âm lượng thực tế của TV/loa gốc cho Google Cast TV, TV có tích hợp Android TV và loa thông minh.
Bắt buộc
A Ứng dụng của người gửi phải cho phép người dùng điều chỉnh âm lượng của
nội dung phát trên TV hoặc loa, bằng cách sử dụng các nút âm lượng phần cứng và/hoặc thanh trượt âm lượng
phần mềm trên thiết bị gửi.
- Android: Bắt buộc phải hỗ trợ cả nút phần cứng và thanh trượt âm lượng của phần mềm.
- iOS: Thanh trượt âm lượng của phần mềm là bắt buộc.
- Web/Chrome: Bắt buộc phải hỗ trợ thanh trượt âm lượng của phần mềm.
B Trên thiết bị di động, thanh trượt âm lượng của phần mềm phải có trong hộp thoại Truyền, trong khi truyền.
C Thanh trượt âm lượng trong ứng dụng người gửi phải đồng bộ hoá với âm lượng hiện tại của Bộ thu trên web sau khi kết nối với Bộ nhận web và luôn đồng bộ hoá.
D Thanh trượt âm lượng trong ứng dụng người gửi phải thể hiện những thay đổi về âm lượng do người gửi khác hoặc điều khiển từ xa của ứng dụng Chromecast thực hiện.
E Ứng dụng gửi không được đặt âm lượng ở mức định sẵn để chỉ truyền các thay đổi âm lượng do người dùng khởi tạo.
F Chỉ dành cho Android: Khi sử dụng các nút phần cứng để thay đổi mức âm lượng trên Bộ thu web, thanh trượt âm lượng trực quan (có biểu tượng Truyền ở bên trái) phải xuất hiện khi người dùng nhấn các nút âm lượng phần cứng. Lưu ý: đối với Android Gingerbread (phiên bản 2.3), biểu tượng Truyền sẽ không xuất hiện.
Các phương pháp hay nhất
- Tăng âm lượng:
- Android: khung tự động tăng âm lượng.
- iOS và Chrome: Đối với các nút âm lượng phần cứng, hãy sử dụng các mức tăng nhỏ hơn hoặc bằng 5% phạm vi âm lượng toàn bộ của thiết bị Bộ nhận web đối với các thiết bị âm thanh/video và bằng 2% phạm vi âm lượng đầy đủ của thiết bị Bộ nhận web đối với các thiết bị chỉ có âm thanh.
Bộ điều khiển mở rộng dành cho người gửi
Ứng dụng gửi phải cung cấp một bộ điều khiển mở rộng cho nội dung đang được truyền.
Bắt buộc
A Xác định nội dung được truyền bằng cách hiển thị tiêu đề nội dung hoặc hình minh hoạ.
B Trước khi bắt đầu phát, hãy hiển thị chỉ báo tải và tiêu đề nội dung hoặc hình minh hoạ.
C Khi nội dung bắt đầu, hãy xác định trạng thái Trình thu nhận web.
D Cung cấp các chế độ kiểm soát có liên quan.
E Ở cuối bên trái thanh tua, hãy hiển thị thời gian phát
hiện tại.
Ở phía bên phải, hãy hiển thị tổng thời lượng của sự kiện phát trực tiếp (nếu đã biết) và nếu đó không phải là sự kiện phát trực tiếp.
F Ẩn các chế độ điều khiển không liên quan đến tính năng truyền.
G Không ngắt kết nối hoặc dừng truyền khi người dùng rời khỏi bộ điều khiển mở rộng.
H Giúp người dùng dễ dàng quay lại bộ điều khiển mở rộng khi người dùng rời khỏi.
Các phương pháp hay nhất
- Cung cấp thanh trượt vị trí phát cho luồng nội dung nghe nhìn.
- Hiển thị hình minh hoạ và siêu dữ liệu khác có ý nghĩa liên quan đến nội dung.
- Xác định thời gian đã trôi qua và thời lượng nội dung cho luồng nội dung đa phương tiện.
Android
Đang tải nội dung người gửi
![Đang tải nội dung người gửi](https://developers.google.cn/static/cast/images/a/sender-control-elements1_a.png?authuser=8&hl=vi)
Đang tải nội dung bộ thu
![](https://developers.google.cn/static/cast/images/r/receiver-content-loading1.gif?authuser=8&hl=vi)
Đang phát nội dung của người gửi
![](https://developers.google.cn/static/cast/images/a/sender-control-elements2_a.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
iOS
Đang tải nội dung người gửi
![](https://developers.google.cn/static/cast/images/i/sender-control-elements1_a.gif?authuser=8&hl=vi)
Đang tải nội dung Bộ nhận web
![](https://developers.google.cn/static/cast/images/r/receiver-content-loading1.gif?authuser=8&hl=vi)
Đang phát nội dung của người gửi
![](https://developers.google.cn/static/cast/images/i/sender-control-elements2_a.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Chrome
Đang tải nội dung người gửi
![](https://developers.google.cn/static/cast/images/w/sender-control-elements1_a.gif?authuser=8&hl=vi)
Đang tải nội dung Bộ nhận web
![](https://developers.google.cn/static/cast/images/r/receiver-content-loading1.gif?authuser=8&hl=vi)
Đang phát nội dung của người gửi
![](https://developers.google.cn/static/cast/images/w/sender-control-elements2_a.jpg?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Bộ điều khiển mini của người gửi
Một thành phần điều khiển nhỏ, liên tục được gọi là bộ điều khiển thu nhỏ sẽ xuất hiện trong khi truyền, khi người dùng chuyển từ trang nội dung hiện tại hoặc bộ điều khiển mở rộng sang một chế độ xem khác trong ứng dụng gửi. Bộ điều khiển thu nhỏ là lời nhắc hiển thị cho quá trình truyền hiện tại và cung cấp quyền truy cập tức thì vào chế độ xem đó.
Bắt buộc
A Thanh hoặc hộp hiển thị nội dung đang truyền xuất hiện ở gần cuối ứng dụng người gửi. Các chế độ điều khiển này vẫn tồn tại trong khi người dùng duyệt qua nội dung hoặc các phần khác của ứng dụng.
B Các chế độ điều khiển hoạt động hiệu quả nhất khi đơn giản và truyền đạt nội dung đang được truyền.
C Có trên tất cả các màn hình của ứng dụng (ngoại trừ trang tay điều khiển mở rộng).
D Nhấn vào vùng nội dung sẽ mở trình điều khiển mở rộng.
E Cung cấp những chế độ kiểm soát khác có liên quan đến biện pháp xử lý tức thì.
Các phương pháp hay nhất
Để có trải nghiệm người dùng tốt nhất, ngoài bộ điều khiển thu nhỏ, hãy cung cấp các chế độ điều khiển trong hộp thoại Truyền.
Android
Bộ điều khiển mini của người gửi
![](https://developers.google.cn/static/cast/images/a/sender-persistent-control1_a.png?authuser=8&hl=vi)
Đã tạm dừng nội dung của Bộ thu trên web
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
iOS
Bộ điều khiển mini của người gửi
![](https://developers.google.cn/static/cast/images/i/sender-persistent-control1_a.png?authuser=8&hl=vi)
Đã tạm dừng nội dung của Bộ thu trên web
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Chrome
Bộ điều khiển mini của người gửi
![](https://developers.google.cn/static/cast/images/w/sender-persistent-control1_a.jpg?authuser=8&hl=vi)
Đã tạm dừng nội dung của Bộ thu trên web
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Thông báo của người gửi
Bắt buộc (chỉ dành cho Android)
A Sử dụng biểu tượng ứng dụng (không phải biểu tượng Truyền) cho thông báo trên thanh trạng thái.
B Xác định nội dung nào đang truyền. Ví dụ: hiện tiêu đề nội dung hoặc hình minh hoạ.
C Xác định Trình thu nhận web nào đang truyền.
D Cung cấp các chế độ kiểm soát nội dung cơ bản.
E Đánh dấu "X" trong hàng thao tác để dừng truyền và ngắt kết nối khỏi Trình nhận web.
F Khi bạn nhấn vào biểu trưng ứng dụng, tiêu đề nội dung hoặc hình minh hoạ,
bộ điều khiển mở rộng của ứng dụng gửi sẽ mở ra.
Ghi chú
- Chỉ Android: không thể triển khai thông báo trong iOS hoặc Chrome.
- Trong Android Gingerbread (phiên bản 2.3), thông báo sẽ chỉ hiển thị văn bản và biểu tượng ứng dụng chứ không phát/tạm dừng hoặc dừng.
- Để biết thêm thông tin, hãy xem bài viết thêm các chế độ điều khiển nội dung nghe nhìn vào thông báo.
Android
Biểu tượng thông báo dành cho người gửi
![](https://developers.google.cn/static/cast/images/a/sender-control-notification1_a.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Kiểm soát thông báo dành cho người gửi
![](https://developers.google.cn/static/cast/images/a/sender-control-notification2_a.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Màn hình khoá của người gửi
Bắt buộc (chỉ dành cho Android)
A Xác định tính năng truyền nội dung bằng tiêu đề nội dung hoặc hình minh hoạ.
B Xác định Trình thu nhận web nào đang truyền. Lưu ý rằng ứng dụng YouTube Music không bắt buộc phải thực hiện quy trình này.
C Cung cấp bộ điều khiển chế độ phát.
D Cho phép truy cập tính năng điều khiển âm lượng thông qua các nút phần cứng.
Bắt buộc đối với Android 4.4 KitKat trở lên:
- Biểu tượng ứng dụng
- Hình minh hoạ (ví dụ: bìa album)
- Xác định nội dung đang truyền trong văn bản (ví dụ: "Nước mắt thép")
- Xác định Bộ thu web nào đang truyền (ví dụ: "Phòng khách")
Bắt buộc đối với Android 4.3 Jelly Bean:
- Hình minh hoạ (ví dụ: bìa album)
- Xác định nội dung đang truyền trong văn bản (ví dụ: "Nước mắt thép")
- Xác định Bộ thu web nào đang truyền (ví dụ: "Phòng khách")
Ghi chú
- Chỉ Android: không thể triển khai thông báo trong iOS hoặc Chrome.
- Cần có các nút điều khiển màn hình khoá cho Android 4.1 trở lên.
- Các chế độ điều khiển khác nhau có sẵn cho các phiên bản hệ điều hành Android khác nhau, và màn hình khoá chỉ có thể chứa các trường văn bản. Nhìn chung, đồ hoạ và biểu tượng mô tả nội dung ngay lập tức hơn so với văn bản.
- Các nút phần cứng điều khiển âm lượng sẽ điều chỉnh âm lượng trên ứng dụng gửi khi điện thoại bị khoá.
- Chế độ điều khiển phải sử dụng thành phần khung:
MediaSession
hoặcMediaSessionCompat
(đối với phiên bản 4.4 và 4.3) hoặcNotification
(phiên bản 5.0 trở lên).
Android
Kiểm soát màn hình khoá của người gửi
![](https://developers.google.cn/static/cast/images/a/sender-control-lockscreen1_a.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Người gửi tiếp tục truyền
Ứng dụng người gửi được kết nối phải khôi phục trạng thái đã kết nối sau khi bị ngắt kết nối ngầm (chẳng hạn như sụt mạng, thiết bị chuyển sang chế độ ngủ hoặc hết pin).
Bắt buộc
A Nếu ứng dụng của người gửi ngắt kết nối (người dùng không dừng truyền hoặc ngắt kết nối một cách rõ ràng), thì nội dung truyền sẽ tiếp tục phát trên Trình thu nhận web. Khi ứng dụng hoặc kết nối được khởi động lại, ứng dụng của người gửi sẽ khôi phục kết nối tới Trình nhận web, miễn là phiên Trình nhận web vẫn đang diễn ra.
B Nút Truyền cần được khôi phục về trạng thái kết nối.
C Nếu người dùng nhấn vào nút Truyền trước khi người gửi
kết nối lại, thì danh sách thiết bị Bộ nhận web sẽ hiển thị. Khi người dùng chọn Bộ thu web đang truyền, một bộ điều khiển thu nhỏ hoặc bộ điều khiển mở rộng sẽ xuất hiện trong ứng dụng của người gửi.
Lưu ý
Ứng dụng Web receiver cũng có thể ngắt kết nối và ngừng chạy do mất điện hoặc một số
gián đoạn khác ngoài ngữ cảnh. Quá trình này được coi là một kết thúc thông thường của phiên, như mô tả trong phần Người gửi dừng truyền.
Android
Chọn ứng dụng
![](https://developers.google.cn/static/cast/images/a/sender-control-resume1_a.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Đã khôi phục kết nối truyền
![](https://developers.google.cn/static/cast/images/a/sender-control-resume2_a.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
iOS
Chọn ứng dụng
![](https://developers.google.cn/static/cast/images/i/sender-control-resume1_a.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Đã khôi phục kết nối truyền
![](https://developers.google.cn/static/cast/images/i/sender-control-resume2_a.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Người gửi dừng truyền
Nội dung được truyền đến TV sẽ tiếp tục phát cho đến khi người dùng chọn Dừng truyền hoặc người gửi truyền nội dung mới. Khi nhiều người gửi được kết nối với cùng một Trình thu nhận web, mỗi ứng dụng của người gửi sẽ có một nút Ngắt kết nối (thay vì nút Dừng truyền) trong hộp thoại Truyền.
Bắt buộc
A Khi nhiều người gửi được kết nối với một Bộ thu web,
thao tác nhấn Dừng truyền từ một ứng dụng gửi sẽ không tác động gì đến Bộ nhận web và xoá các thông báo cũng như các nút điều khiển
Truyền khỏi thiết bị gửi đó. (Các) thiết bị gửi đã kết nối còn lại vẫn
được kết nối với các tính năng Điều khiển truyền có sẵn.
B Khi ứng dụng của người gửi ngắt kết nối ngầm (ví dụ: pin của thiết bị người gửi hết hoặc kết nối mạng của thiết bị gửi với Trình nhận web
bị mất), thì ứng dụng này không thực hiện gì với Trình nhận web và xoá các thông báo cũng như các nút điều khiển Truyền khỏi thiết bị của người gửi. Ứng dụng của người gửi phải theo dõi các tình trạng ngắt kết nối ngầm ẩn và cố gắng kết nối lại với Trình nhận web khi ứng dụng của người gửi được mở lại.
Android
Hộp thoại truyền, nút ngắt kết nối
![](https://developers.google.cn/static/cast/images/a/sender-control-end1.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
iOS
Hộp thoại truyền, nút ngắt kết nối
![](https://developers.google.cn/static/cast/images/i/sender-control-end1.png?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Chrome
Hộp thoại truyền, nút ngắt kết nối
![](https://developers.google.cn/static/cast/images/w/sender-control-end1.jpg?authuser=8&hl=vi)
Bộ nhận web đang phát nội dung
![](https://developers.google.cn/static/cast/images/r/receiver-content-playing1.png?authuser=8&hl=vi)
Những hình ảnh dùng trong hướng dẫn thiết kế này là do Butter Foundation, được chia sẻ theo bản quyền hoặc giấy phép Creative Commons.
- Giấc mơ của voi: (c) bản quyền 2006, Tổ chức Blender / Viện nghệ thuật Truyền thông Hà Lan/ www.elephantsdream.org
- Sintel: (c) bản quyền Blender Foundation | www.sintel.org
- Nước mắt thép: (CC) Blender Foundation | mango.bfragment.org
- Big Buck Bunny: (c) bản quyền 2008, Blender Foundation / www.bigbuckbunny.org