הרחבת אפליקציית המדיה ל-Android TV

מערכת Android מציעה חוויית משתמש עשירה שמיועדת לאפליקציות שפועלות במכשירים עם מסך גדול, כמו טלוויזיות באיכות HD. אתם יכולים להרחיב את קהל המשתמשים של האפליקציה שלכם על ידי פיתוח שלה ל-Android TV. במסמך הזה אנחנו מסבירים איך לעשות את זה בצורה יעילה.

פיתוח אפליקציות לטלוויזיה

אפליקציות לטלוויזיה משתמשות באותה מבנה כמו אפליקציות לטלפונים ולטאבלטים. הגישה הזו מאפשרת לכם ליצור אפליקציות חדשות לטלוויזיה על סמך הידע שכבר יש לכם לגבי פיתוח אפליקציות ל-Android, או להרחיב את האפליקציות הקיימות כך שהן יפעלו גם במכשירי טלוויזיה.

עם זאת, מודל האינטראקציה של המשתמש בטלוויזיה שונה באופן משמעותי ממודל האינטראקציה בטלפונים ובטאבלטים. כדי שהאפליקציה תצליח במכשירי טלוויזיה, צריך לתכנן פריסות חדשות שאפשר להבין בבירור ממרחק של 3 מטרים, ולספק ניווט שפועל רק עם מקשי החיצים ולחצן הבחירה.

מידע נוסף על שיקולים כמו טיפול בבקרי חומרה של טלוויזיות, יצירת פריסות לטלוויזיות ויצירת ניווט בטלוויזיות זמין במאמר פיתוח אפליקציות לטלוויזיה.

שימוש ב-Media3 ExoPlayer

‫Jetpack Media3 מספק ממשק Player שמגדיר תכונות בסיסיות כמו היכולת להפעיל, להשהות, להריץ קדימה או אחורה ולהציג פרטי טראק. ‫ExoPlayer הוא הטמעה ברירת המחדל של הממשק הזה ב-Media3.

בהשוואה ל-MediaPlayer API של Android, הוא כולל תוספות שימושיות כמו תמיכה בכמה פרוטוקולים של סטרימינג, רכיבי ברירת מחדל לעיבוד אודיו ווידאו ורכיבים שמטפלים בחיץ (באפרינג) של מדיה.

אפשר להתאים אישית את ExoPlayer ולהרחיב אותו, והוא יכול להתעדכן דרך עדכוני אפליקציות בחנות Play. מידע נוסף זמין במאמר בנושא Media3 ExoPlayer.

שימוש ב-Media3 MediaSession

סשנים של מדיה מספקים למערכת דרך אוניברסלית לקיים אינטראקציה עם נגן האודיו או הווידאו של האפליקציה. אחד המאפיינים העיקריים שמבדילים את Media3 מממשקי API קודמים של מדיה הוא שאין יותר צורך במחברים בין רכיבים.

המחלקה החדשה MediaSession מקבלת כל מחלקה שמטמיעה את הממשק Player. ‫ExoPlayer ו-MediaController הן מחלקות שמטמיעות את הממשק הזה. כך קל יותר ליצור אינטראקציה בין הרכיבים. מידע נוסף זמין במאמר בנושא ממשק הנגן.

מידע נוסף על יצירת אפליקציה להפעלת מדיה זמין במאמר בנושא יצירת נגן מדיה בסיסי באמצעות ExoPlayer.

כדי ליצור את חוויית השימוש הטובה ביותר למשתמשי הקצה באפליקציית המדיה, צריך להטמיע את MediaSession. כדי לעשות את זה, מאתחלים Player ומספקים אותו ל-MediaSession.Builder כך:

Kotlin

val player = ExoPlayer.Builder(context).build()
val mediaSession = MediaSession.Builder(context, player).build()

Java

ExoPlayer player = new ExoPlayer.Builder(context).build();
MediaSession mediaSession = new MediaSession.Builder(context, player).build();

טיפול אוטומטי במצבים

ספריית Media3 מעדכנת באופן אוטומטי את סשן המדיה באמצעות המצב של הנגן. לכן, לא צריך לטפל באופן ידני במיפוי מהנגן להפעלה. כך המשתמשים תמיד רואים את המידע העדכני על המדיה שמופעלת, כולל בכרטיס 'מה שומעים עכשיו?'.

שליטה בהפעלת המודעות ובהפעלת התוכן

ב-Media3, נגן ברירת המחדל הוא המחלקה ExoPlayer, שבה מוטמע הממשק Player. חיבור של סשן המדיה לנגן מאפשר לאפליקציה לפרסם את הפעלת המדיה באופן חיצוני ולקבל פקודות הפעלה ממקורות חיצוניים. במהלך סשן המדיה, הפקודות האלה מועברות לנגן של אפליקציית המדיה.

סשן המדיה הוא המפתח לשליטה בהפעלה. הוא מאפשר לכם לנתב פקודות ממקורות חיצוניים לנגן שמבצע את העבודה של הפעלת המדיה. לקוחות חיצוניים יכולים להשתמש בבקר מדיה כדי להנפיק פקודות הפעלה לאפליקציית המדיה. הפקודות האלה מתקבלות בסשן המדיה, ובסופו של דבר מועברות לנגן המדיה.

מידע נוסף על הפעלה, כמו איך להתאים אישית את ההתנהגות של פקודות ההפעלה, זמין במאמר שליטה בהפעלה ופרסום שלה באמצעות MediaSession.

איך להימנע מהפרעות באפליקציה

שימוש ב-MediaSession מאפשר לכם להימנע מהפרעות מיותרות כמו:

  • הפעלה לא צפויה ומתמשכת כשמכבים את הטלוויזיה או כשעוברים בין מקורות הקלט של הטלוויזיה. הפעולה הזו גורמת גם לצריכת אנרגיה גבוהה בחומרה של הטלוויזיה. באמצעות MediaSession, האפליקציה יכולה להודיע לפלטפורמה שהיא מפעילה מדיה, והפלטפורמה יכולה להודיע לאפליקציה שאפשר להפסיק את ההפעלה.

  • הפעלת המוזיקה נעצרת באופן לא צפוי כשיוצאים מהאפליקציה או כשמכבים את המסך של הטלוויזיה. שימוש בממשקי API של MediaSession מאפשר המשך הפעלה בשירות רקע.

  • אינטראקציה מוגבלת עם תוכן שמונעת מהמשתמשים לשלוט בהפעלה. לדוגמה, חזרה לאפליקציה אם היא מפעילה מוזיקה ברקע, או תמיכה בפקודות קוליות. באמצעות MediaSession באפליקציה, המשתמשים יכולים להשתמש בפקודות קוליות כדי להריץ קדימה או אחורה שירים או פרקים.

שיקולים נוספים

כשמרחיבים את אפליקציית המדיה ל-Android TV, צריך לקחת בחשבון בעיות נגישות, איך לעודד מעורבות, איך לאפשר למשתמשים למצוא תוכן ואיך ליצור משחקים ושירותי קלט לטלוויזיה.

נגישות בטלוויזיה

טכנולוגיות מסייעות יכולות לעזור למשתמשים עם לקויות ראייה, וגם עוזרות להם בפועל, אבל חשוב לתמוך בנגישות בתהליכי גילוי תוכן באפליקציות לטלוויזיה.

לדוגמה, חשוב לספק הנחיות ניווט ולתייג את הרכיבים בצורה נכונה, ולוודא שאפליקציות לטלוויזיה פועלות בצורה טובה עם תכונות נגישות כמו TalkBack. הפעולות האלה יכולות לשפר באופן משמעותי את החוויה של משתמשים עם לקויות ראייה.

השלב הראשון בשיפור הנגישות הוא מודעות. מידע נוסף על שינוי גודל הטקסט, פריסות מקלדת ותיאורי אודיו זמין במקורות מידע בנושא נגישות.

שיטות מומלצות להגברת המעורבות ב-Google TV

כל האפליקציות שפותחו ל-Android TV פועלות במכשירים עם Google TV. כדי לספק את חוויית המשתמש הטובה ביותר ב-Google TV, אנחנו ממליצים לפעול לפי השיטות המומלצות הבאות.

צריך להשתמש ב-MediaSession כדי לספק דרך אוניברסלית לאינטראקציה עם נגן אודיו או וידאו. מידע נוסף על הטמעה זמין במאמר שימוש ב-MediaSession של Media3.

כדרישת בסיס, האפליקציה צריכה לתמוך ב-Google Cast. הוא מאפשר לכם להרחיב את האפליקציות שלכם ל-Android, ל-iOS ול-Chrome כדי להפעיל סטרימינג של אודיו ווידאו לטלוויזיות עם Android TV, למכשירי Chromecast ולמכשירים עם Assistant. מידע נוסף זמין במאמרי העזרה בנושא Google Cast.

אתם יכולים גם לעזור למשתמשים:

  • גילוי תוכן בפלטפורמות שונות באמצעות פיד של פעולות שקשורות למדיה או שילוב של התכונה 'התוכן הבא לצפייה'.

  • כדאי לנצל את היתרונות של שימוש בקול ואינטראקציה על ידי תמיכה בקישור חשבונות ובסנכרון הרשאות, הצעת שידור קולי והפעלת Cast Connect.

  • קל יותר לשלם כשמשלבים את מערכת החיוב של Google Play ומספקים מינויים ללא חיכוך.

יצירת מסגרת לקלט טלוויזיה

צפייה בתוכניות טלוויזיה בשידור חי ובתוכן אחר שמבוסס על ערוצים ומוצג ברצף היא חלק חשוב מחוויית הצפייה בטלוויזיה. המשתמשים רגילים לבחור תוכניות ולצפות בהן בטלוויזיה על ידי גלישה בערוצים. המסגרת של קלט הטלוויזיה יוצרת ערוצים לפרסום תוכן וידאו או מוזיקה במדריך התוכניות של הטלוויזיה.

המסגרת של TV Input מספקת שיטה אחידה לקבלה ולהפעלה של תוכן וידאו בשידור חי ממקורות חומרה, כמו יציאות HDMI וטיונרים מובנים, וממקורות תוכנה, כמו וידאו שמוזרם באינטרנט. מידע נוסף זמין במאמר בנושא יצירת שירותי קלט לטלוויזיה.