Live TV คือแอปอ้างอิงทีวีที่ออกแบบมาสำหรับอุปกรณ์ทีวี Android อย่างไรก็ตาม ผู้ผลิตอุปกรณ์อาจต้องเพิ่มฟังก์ชันเฉพาะผลิตภัณฑ์ ไม่รวมอยู่ในการใช้งานเริ่มต้นของรายการทีวีสด เช่น การปรับ โหมดเกม หรือโหมด 3 มิติ เพื่อรองรับฟังก์ชันเฉพาะอุปกรณ์เหล่านี้ หรือ ตัวเลือก Live TV สนับสนุนการกำหนดค่าเหล่านี้:
- เปิดใช้โหมดเปลี่ยนเวลาเพื่อให้ผู้ใช้หยุดชั่วคราว กรอไปข้างหน้า และกรอกลับ การกำหนดค่าโหมดเปลี่ยนเวลาเพื่อใช้ ที่จัดเก็บข้อมูลภายนอกแทนที่จัดเก็บข้อมูลภายใน
- กำลังเพิ่มตัวเลือกลงในแถวตัวเลือกทีวี
- การเพิ่มแถวที่กำหนดเองและเพิ่มตัวเลือกลงในแถวนั้น
หมายเหตุ: เผยแพร่
ช่องคือการติดตั้งใช้งานรายการทีวีสดของ Google ซึ่งใช้งานได้ตามที่เปิดให้ใช้
อุปกรณ์กับบริการของ Google หากต้องการปรับแต่งรายการถ่ายทอดสด โปรดแทนที่
com.android.tv.*
ที่มี com.google.android.tv.*
ในรายการเหล่านี้
วิธีทำ
ปรับแต่งรายการทีวีสด
หากต้องการปรับแต่งรายการทีวีสด อุปกรณ์ Android TV เป้าหมายต้องมีแพ็กเกจการปรับแต่ง
ติดตั้งไว้แล้ว โดยต้องเป็นแอประบบที่สร้างไว้ล่วงหน้าโดยมี
สิทธิ์com.android.tv.permission.CUSTOMIZE_TV_APP
รายการทีวีสดจะค้นหาแพ็กเกจระบบที่มีสิทธิ์นี้ แล้วตรวจสอบทรัพยากร และตรวจหา กิจกรรม ของแพ็กเกจ ทำเครื่องหมายด้วยหมวดหมู่เฉพาะ เพื่อปรับแต่งได้
ประเด็นสำคัญ: คุณปรับแต่งรายการทีวีสดได้เพียงแพ็กเกจเดียว
กำหนดค่าโหมดเปลี่ยนเวลา
การเปลี่ยนเวลา (Trickplay) ช่วยให้อุปกรณ์ทีวี Android หยุดชั่วคราว กรอกลับ แล้วกรอการเล่นช่องไปข้างหน้า การใช้งานรายการทีวีสด การเปลี่ยนเวลา สามารถใช้ผ่าน UI ของตัวควบคุม Play ได้ การเปลี่ยนเวลาจะเปิดใช้โดยค่าเริ่มต้นใน รายการทีวีสด แต่ปิดใช้ได้ คุณสามารถกำหนดค่าการเปลี่ยนเวลาเพื่อใช้ ที่จัดเก็บข้อมูลภายนอกเท่านั้น
หากต้องการกำหนดค่าการเปลี่ยนเวลา ให้เพิ่มทรัพยากรสตริง trickplay_mode
และตั้งค่าของ URL เป็นแบบใดแบบหนึ่งต่อไปนี้
enabled
: เปิดใช้การเปลี่ยนเวลา ค่านี้เป็นค่าเริ่มต้นเมื่อ ไม่ได้ให้ตัวเลือกใดๆdisabled
: ปิดใช้การเปลี่ยนเวลาuse_external_storage_only
: กำหนดค่าการเปลี่ยนเวลาเพื่อใช้ ที่จัดเก็บข้อมูลภายนอก
<string name="trickplay_mode">use_external_storage_only</string>
ปรับแต่งตัวเลือกทีวี
ผู้ผลิตอุปกรณ์สามารถเพิ่มตัวเลือกที่กำหนดเองสำหรับการตั้งค่ารายการทีวีสดไปยัง เมนูตัวเลือกทีวี เช่น การเพิ่มทางลัดไปยังการตั้งค่าภาพเสียง
หากต้องการระบุตัวเลือกที่กำหนดเอง ให้ประกาศตัวกรอง Intent ที่กรองหมวดหมู่
com.android.tv.category.OPTIONS_ROW
ในกิจกรรม ฟีเจอร์ที่กำหนดเอง
ติดตั้งใช้งานโดยผู้ผลิตอุปกรณ์ในกิจกรรม กิจกรรม
จะเปิดขึ้นหากมีการคลิกตัวเลือก ชื่อและไอคอนของกิจกรรมใช้สำหรับ
ตัวเลือก ตัวเลือกทีวีที่กำหนดเองควรตรงกับ UI ที่มีอยู่เพื่อนำเสนอ
ประสบการณ์ของผู้ใช้ที่ดีที่สุด
หมายเหตุ: กิจกรรมจะจัดการได้เพียงตัวเลือกเดียว เนื่องจาก Live TV ไม่สามารถแยกความแตกต่างของตัวกรอง Intent ในกิจกรรมที่มี เนื่องจากข้อจำกัดของ Android โปรดดูหัวข้อจัดการตัวเลือกหลายรายการใน กิจกรรมเพื่อหาวิธีแก้ปัญหา
ผู้ผลิตอุปกรณ์ยังสามารถวางตัวเลือกที่กำหนดเองก่อนหรือหลังตัวเลือกที่มีอยู่
โดยกำหนด android:priority
ใน AndroidManifest.xml
ตัวเลือกที่มีค่าลำดับความสำคัญต่ำกว่า 100 จะแสดงก่อนตัวเลือกที่มีอยู่
และจะแสดงค่าที่มากกว่า 100 ต่อท้าย ตัวเลือกที่กำหนดเองหลายรายการ (ตัวเลือก
ก่อนหรือหลังตัวเลือกที่มีอยู่) จะจัดเรียงตามลำดับความสำคัญจากน้อยไปมาก
คำสั่งซื้อ หากตัวเลือกมีลำดับความสำคัญเหมือนกัน ระบบจะไม่กำหนดลำดับจากตัวเลือกเหล่านั้น
ในตัวอย่างนี้ ตัวเลือกจะปรากฏเป็นอันดับแรกในแถวตัวเลือกทีวี และ PictureSettingsActivity จะเปิดขึ้นหากมีการคลิกตัวเลือก
<activity android:name=".PictureSettingsActivity" android:label="@string/activity_label_picture_settings" android:theme="@style/Theme.Panel"> <intent-filter android:icon="@drawable/ic_tvoptions_brightness" android:label="@string/option_label_brightness" android:priority="0"> <action android:name="android.intent.action.MAIN" /> <category android:name="com.android.tv.category.OPTIONS_ROW" /> </intent-filter> </activity>
จัดการตัวเลือกหลายรายการในกิจกรรม
ตัวเลือกจะแมปกับตัวกรอง Intent ของกิจกรรม และในทางกลับกันด้วย เนื่องจาก Android
จะไม่แยกแยะตัวกรอง Intent ที่มีหมวดหมู่และการทำงานเหมือนกัน
กิจกรรมจะจัดการเพียงตัวเลือกเดียว แม้ว่าจะมีการระบุตัวกรอง Intent ไว้หลายรายการ
อยู่ในนั้น ในการจัดการตัวเลือกหลายรายการในกิจกรรม ให้ใช้
<activity-alias>
ใน AndroidManifest.xml
ใน
กิจกรรม ให้ใช้ getIntent().getComponent()
เพื่อระบุตัวเลือกที่ถูกคลิก
<activity-alias android:name=".AnyUniqueName" android:targetActivity=".PictureSettingsActivity"> <intent-filter android:icon="@drawable/ic_tvoptions_energy_saving" android:label="@string/option_label_energy_saving" android:priority="1"> <action android:name="android.intent.action.MAIN" /> <category android:name="com.android.tv.category.OPTIONS_ROW" /> </intent-filter> </activity-alias>
สร้างแถวที่กำหนดเอง
ผู้ผลิตอุปกรณ์จะเพิ่มและปรับแต่งแถวเหนือแถวตัวเลือกทีวีได้ แถวที่กำหนดเองนี้ไม่บังคับ
ชื่อของแถว
กำหนดสตริง partner_row_title
ใน
res/values/strings.xml
ค่าของสตริงจะใช้สำหรับการกำหนดค่า
ชื่อแถว
<string name="partner_row_title">Partner Row</string>
ตัวเลือกที่กำหนดเอง
หากต้องการเพิ่มตัวเลือกที่กําหนดเองลงในแถวที่กําหนดเอง ให้ทําตามขั้นตอนการเพิ่มตัวเลือก
เมนูตัวเลือกทีวี แต่เปลี่ยนชื่อหมวดหมู่เป็น
com.android.tv.category.PARTNER_ROW
แทน
<activity android:name=".ThreeDimensionalSettingDialogActivity" android:label="@string/activity_label_3d" android:theme="@android:style/Theme.Material.Light.Dialog"> <intent-filter android:icon="@drawable/ic_tvoptions_3d" android:priority="0"> <action android:name="android.intent.action.MAIN" /> <category android:name="com.android.tv.category.PARTNER_ROW" /> </intent-filter> </activity>