Android TV עם Google Cast

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

בהכנה לפיתוח

  1. מגדירים את מכשיר ה-Android TV:
    1. מחברים את מכשיר ה-Android TV לרשת המקומית.
    2. נכנסים לחשבון Google.
  2. מההגדרות בשורה מכשיר, בוחרים באפשרות מידע כללי.
  3. גוללים למטה אל Build ולוחצים עליו כמה פעמים עד שמופיעה תיבת דו-שיח עם ההודעה "You are now a developer" (הוגדר כמפתח/ת).
  4. אם ניפוי הבאגים ב-USB:
    1. מתקינים את כבל ה-USB, אבל עדיין לא מחברים את הקצה הראשי של כבל ה-USB למחשב.
    2. בשורה Preferences, לוחצים על Developer options (אפשרויות למפתחים), בוחרים באפשרות ניפוי באגים ב-USB ואז באפשרות On.
  5. חוזרים למסך הבית. עליכם לעשות זאת כדי להחיל את ההגדרות שבחרתם. ההגדרות האלה לא יימחקו, אלא אם תבצעו איפוס להגדרות המקוריות.
  6. רשום את מכשיר ה-Android TV ב-Google Cast SDK Developer Console, כפי שמתואר ברישום מכשיר.

ניפוי באגים

כדי לבדוק את האפליקציה Web Receiver במכשיר Android TV ולנפות באגים באמצעותה:

  1. רושמים את מכשיר Android TV ואת האפליקציה ב-Google Cast SDK Developer Console. בקטע רישום אפשר לקרוא מידע נוסף על רישום מכשירים ואפליקציות.
  2. מפעילים את אפליקציית השולח ומעבירים (cast) למכשיר Android TV.
  3. מתחברים למכשיר ה-Android TV באמצעות ADB, כפי שמתואר במאמר שימוש ב-Android Debug Bridge.
  4. במחשב הפיתוח, פותחים חלון בדפדפן Chrome ועוברים לכתובת chrome://inspect.
  5. לוחצים על הקישור inspect כדי להעביר את Web Receiver לכלי לניפוי הבאגים.
  6. במסוף Chrome Remote Debugger, מפעילים רישום ביומן של ניפוי באגים על ידי הזנת הפקודה הבאה:

    cast.receiver.logger.setLevelValue(cast.receiver.LoggerLevel.DEBUG);
    

מידע נוסף זמין במאמר ניפוי באגים.

הנחיות לתאימות ל-Android TV

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

  • חשוב לשים לב שהמחרוזת של סוכן המשתמש מכילה גם את "Android" וגם את "CrKey"; אתרים מסוימים עשויים להפנות אוטומטית לאתר לנייד בלבד כי הם מזהים את התווית "Android". אל תניחו ש-"Android" במחרוזת הסוכן-משתמש תמיד מצביע על משתמש בנייד.
  • מקבץ המדיה של Android עשוי להשתמש ב-GZIP שקוף לאחזור נתונים. ודאו שנתוני המדיה שלכם יכולים להגיב לAccept-Encoding: gzip.
  • אירועי מדיה מסוג HTML5 ב-Android TV עשויים להיות מופעלים בתזמונים שונים מאשר ב-Chromecast. בעקבות זאת, ייתכן שייווצרו בעיות שהוסתרו ב-Chromecast.
  • כשמעדכנים את המדיה, צריך להשתמש באירועים שקשורים למדיה שהופעלו על ידי רכיבי <audio>/<video>, כמו timeupdate, pause ו-waiting. כדאי להימנע משימוש באירועים שקשורים לרשתות, כמו progress, suspend ו-stalled, כי הם בדרך כלל תלויים בפלטפורמה.
  • כשמגדירים את אישורי ה-HTTPS באתר של Web Receiver, חשוב לכלול אישורי CA ברמת ביניים. כדי לבדוק, אפשר לבדוק בדף הבדיקה של SSL ב-Qualsys: אם נתיב האישור המהימן של האתר כולל אישור CA שנקרא 'הורדה נוספת', יכול להיות שהוא לא ייטען בפלטפורמות שמבוססות על Android.
  • למרות ש-Chromecast מציג את דף Web Receiver ברמה של 720p, פלטפורמות העברה אחרות, כולל Android TV, עשויות להציג את הדף באיכות של עד 1080p. מוודאים שדף האינטרנט של מקלט האינטרנט משתנה בחינניות ברזולוציות שונות.

שימוש ב-Android Debug Bridge

פלטפורמת Android TV מוצגת במכשירים מסוגים רבים של מוצרי אלקטרוניקה: טלוויזיות, ממירים, קונסולות משחקים וכו'. תוכלו להגדיר כל אחד מהם באופן שונה. אם נתקלתם בבעיות בגישה למשאבי המערכת של Android TV דרך ממשק המשתמש של המכשיר, תוכלו להשתמש ב-Android Debug Bridge (ADB) כדי לקבל את המספר הסידורי של המכשיר לרישום, וכן כדי לנפות באגים באפליקציה. מידע נוסף זמין במאמר Android Debug Bridge.

שימוש ב-ADB דרך Wi-Fi

כדי להתחבר למכשיר באמצעות ADB בחיבור Wi-Fi:

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

    adb connect Android TV device IP address:4321
    
  4. במחשב, פותחים טרמינל ומזינים פקודות ADB. כדי לוודא שהחיבור קיים ומכשיר Android TV מתקשר ברשת, תוכלו להשתמש בפקודה הבאה:

    adb logcat

שימוש ב-ADB עם כבל USB

כדי להתחבר למכשיר באמצעות ADB באמצעות חיבור כבל USB:

  1. מגדירים את מכשיר ה-Android TV לפיתוח, כפי שמתואר במאמר הגדרה לצורכי פיתוח.
  2. מחברים את הקצה הראשי של כבל ה-USB למחשב.
  3. בתיבת הדו-שיח לאפשר ניפוי באגים ב-USB?, בוחרים באפשרות תמיד אפשר מהמחשב הזה ואז לוחצים על אישור.
  4. במחשב, פותחים טרמינל ומזינים פקודות ADB. כדי לוודא שהחיבור קיים ומכשיר Android TV מתקשר ברשת, תוכלו להשתמש בפקודה הבאה:

    adb logcat

שימוש ב-ADB באמצעות TCP/IP

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

  1. מגדירים את מכשיר ה-Android TV לפיתוח, כפי שמתואר במאמר הגדרה לצורכי פיתוח.
  2. ב-Android TV, בשורה מכשיר, בוחרים באפשרות רשת > Wi-Fi ובוחרים את הרשת המחוברת.
  3. בוחרים באפשרות פרטי סטטוס ומציינים את כתובת ה-IP.
  4. אם המכשיר שלכם הוא מכשיר Android TV רגיל וקמעונאי, צריך לבצע את הפעולות הבאות:

    1. פועלים לפי השלבים בקטע שימוש ב-ADB עם כבל USB.
    2. מוודאים שהמחשב מחובר לאותה רשת שאליה מחובר מכשיר ה-Android TV.
    3. במחשב, במסוף, מפעילים את היציאה עבור TCP/IP על ידי הזנת הפקודה הבאה:

      adb tcpip 5555
    4. מוציאים את כבל ה-USB ומזינים את הפרטים הבאים במסוף:

      adb connect Android TV device IP address:5555
      
  5. אם מדובר במכשיר Android TV שנוצר על ידי מפתח, צריך לבצע את הפעולות הבאות:

    1. מוודאים שהמחשב מחובר לאותה רשת שאליה מחובר מכשיר ה-Android TV.
    2. פותחים טרמינל ומזינים את הפרטים הבאים:

      adb connect Android TV device IP address:4321
      
  6. ב-Android TV, בתיבת הדו-שיח לאפשר ניפוי באגים ב-USB?, בוחרים באפשרות תמיד לאפשר מהמחשב הזה ולוחצים על אישור. כדי לוודא שהחיבור נוצר ושמכשיר ה-Android TV מתקשר ברשת באמצעות הפקודה הבאה:

    adb logcat