Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.

Ứng dụng TV tham khảo

Ứng dụng TV phát nội dung truyền hình trực tiếp là bắt buộc đối với một số loại thiết bị Android TV, chẳng hạn như TV bảng điều khiển và STB của nhà cung cấp dịch vụ. Mã nguồn cho ứng dụng tham chiếu có sẵn trong Dự án nguồn mở Android.

Trang này tóm tắt cách tạo và tùy chỉnh ứng dụng TV hệ thống dựa trên Live TV cho thiết bị Android TV của bạn.

Sự phụ thuộc

Ứng dụng Truyền hình trực tiếp là một thành phần của Khung đầu vào TV (TIF) và không thể được sử dụng độc lập với các thành phần TIF khác. Các nhánh khác nhau của ứng dụng có sự phụ thuộc khác nhau vào các cấp API Android:

Chi nhánh Cấp độ API mục tiêu Cấp API tối thiểu
master 24 (Android 7.0) 23
android-live-tv 23 (Android 6.0) 21
android-live-tv-l-mr1 22 (Android 5.1) 21

Lấy nguồn

Để bắt đầu, hãy chọn phiên bản Truyền hình trực tiếp từ Git. Các hướng dẫn sau đây dành cho phiên bản Live TV hiện tại. Để sử dụng phiên bản cũ hơn, hãy chuyển sang một trong các nhánh Git được liệt kê trong bảng trước.

mkdir live-tv && cd live-tv
repo init -u https://android.googlesource.com/platform/manifest -b master
repo sync -j8 -c

Xây dựng

Để tạo mã Truyền hình trực tiếp, hãy chạy:

. build/envsetup.sh
tapas LiveTv x86
make LiveTv

Đẩy

Sử dụng mã sau để đẩy Truyền hình trực tiếp đến thiết bị thử nghiệm của bạn:

adb install -r -d $OUT/system/priv-app/LiveTv/LiveTv.apk

Nếu bạn dự định ứng dụng Truyền hình trực tiếp có quyền hệ thống, hãy sử dụng mã sau để đẩy ứng dụng đó lên /system/priv-app trong lần đầu tiên bạn cài đặt:

adb push $OUT/system/priv-app/LiveTv/LiveTv.apk  /system/priv-app/LiveTv/

Bài kiểm tra

Sau khi cài đặt Live TV trên thiết bị của bạn, hãy kiểm tra xem nó đã được tích hợp đúng cách chưa bằng các bài kiểm tra sau đây ngoài bộ kiểm tra khả năng tương thích và kiểm tra CTS Verifier cho ứng dụng TV. Bạn phải có thiết bị hoặc trình mô phỏng được kết nối để chạy tất cả các loại thử nghiệm.

Bài kiểm tra đơn vị

adb shell logcat -c
m LiveTv TVTestInput TVUnitTests -j20 &&\
adb install -r -d $OUT/system/priv-app/LiveTv/LiveTv.apk &&\
adb install -r -d $OUT/system/app/TVTestInput/TVTestInput.apk && \
adb install -r -d $OUT/data/app/TVUnitTests/TVUnitTests.apk && \
adb shell pm clear com.android.providers.tv && \
adb shell pm clear com.android.tv && \
adb shell am instrument \
  -e testSetupMode unit \
  -w com.android.tv.testinput/.instrument.TestSetupInstrumentation &&\
adb shell input keyevent KEYCODE_HOME &&\
adb shell am instrument \
  -w 'com.android.tv.tests/android.support.test.runner.AndroidJUnitRunner'

Kiểm tra chức năng

adb shell logcat -c
m LiveTv TVTestInput TVFuncTests -j20 &&\
adb install -r -d $OUT/system/priv-app/LiveTv/LiveTv.apk &&\
adb install -r -d $OUT/system/app/TVTestInput/TVTestInput.apk && \
adb install -r -d $OUT/data/app/TVFuncTests/TVFuncTests.apk && \
adb shell pm clear com.android.providers.tv && \
adb shell pm clear com.android.tv && \
adb shell am instrument \
  -e testSetupMode func \
  -w com.android.tv.testinput/.instrument.TestSetupInstrumentation &&\
adb shell input keyevent KEYCODE_HOME &&\
adb shell am instrument \
  -w 'com.android.tv.tests.ui/android.support.test.runner.AndroidJUnitRunner'

Kiểm tra jank

Các bài kiểm tra jank tìm kiếm khung hình bị giảm và độ trễ trong kết xuất.

adb shell logcat -c
m LiveTv TVTestInput TVJankTests -j20 &&\
adb install -r -d $OUT/system/priv-app/LiveTv/LiveTv.apk &&\
adb install -r -d $OUT/system/app/TVTestInput/TVTestInput.apk &&\
adb install -r -d $OUT/data/app/TVJankTests/TVJankTests.apk &&\
adb shell pm clear com.android.providers.tv &&\
adb shell pm clear com.android.tv &&\
echo "Creating a lot of channels and EPG data, this may take a while" &&\
adb shell am instrument \
  -e testSetupMode jank \
  -w com.android.tv.testinput/.instrument.TestSetupInstrumentation &&\
adb shell input keyevent KEYCODE_HOME &&\
adb shell am instrument \
  -w 'com.android.tv.tests.jank/android.support.test.runner.AndroidJUnitRunner'