מחזור החיים של עדכון תוספים ל-Chrome

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

מחזור העדכונים הרגיל

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

היבט קריטי בתהליך העדכון הוא שעדכון מותקן רק כשהתוסף נחשב לא פעיל. כדי שהתוסף יהיה במצב לא פעיל, הרכיבים שלו לא יכולים להיות בשימוש פעיל. בהקשר של Manifest V3, המשמעות העיקרית היא שקובץ השירות (service worker) של התוסף לא פועל. ‫Service Worker מתוכנן להיות מונחה-אירועים, והוא מסתיים אחרי תקופה של חוסר פעילות. בנוסף, אם יש דפים פתוחים של תוספים, כמו חלונית צדדית, חלון קופץ או דף אפשרויות, התוסף לא ייחשב כלא פעיל. סקריפט תוכן פעיל לא משפיע על ההגדרה אם התוסף נחשב ללא פעיל או לא.

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

מעקב אחרי הפצת עדכוני תוספים

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

צילום מסך שבו מוצג מספר המשתמשים ביום לפי גרסה עבור תוסף לדוגמה.

עדכון תוספים באופן ידני

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

משתמשים יכולים לכפות עדכון של כל התוספים המותקנים שלהם לפי השלבים הבאים:

  1. עוברים אל chrome://extensions.
  2. מפעילים את מצב פיתוח באמצעות המתג בפינה השמאלית העליונה.
  3. לוחצים על הלחצן עדכון שמופיע.

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

חיפוש עדכונים מתוסף

ממשק ה-API של chrome.runtime מספק כלים לתוספים כדי ליצור אינטראקציה עם מנגנון העדכון.

חיפוש עדכונים לפי דרישה

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

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

האזנה לעדכונים זמינים

האירוע chrome.runtime.onUpdateAvailable מופעל כשעדכון הורד ומוכן להתקנה. האירוע הזה מספק את מספר הגרסה החדש בפרטים שלו. תוסף יכול להאזין לאירוע הזה כדי לדעת אם יש עדכון זמין, ואם כן, להחליט אם לעבור למצב המתנה או לגרום לטעינה מחדש באמצעות chrome.runtime.reload()‎ כשמתאים.

בדוגמה הבאה מוצג דפוס הטמעה בסיסי:

במקרים חריגים, אפשר לחייב את הדפדפן לבדוק אם יש עדכון לתוסף באמצעות chrome.runtime.requestUpdateCheck():

חשוב לציין שהדפדפן יגביל את מספר הפעמים שאפשר להפעיל את requestUpdateCheck(). משתמשים בפונקציה הזו רק כשעדכון זמין. לדוגמה, כשנדרשת גרסה חדשה יותר של התוסף כדי להשתמש ב-backend מעודכן.

שליטה בעדכונים באמצעות מדיניות ארגונית

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

אילוץ התקנה

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

הצמדת גרסת התוסף

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

שינוי מקור העדכון

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

הגדרת גרסה מינימלית של Chrome

אפשר לציין minimum_chrome_version בקובץ המניפסט של התוסף. כך מוודאים שהתוסף יותקן רק בגרסאות של Chrome שתומכות בממשקי ה-API שבהם הוא משתמש.

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