אפשרויות הפצה חלופיות של תוספים

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

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

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

תוסף שלא מותקן מחנות האינטרנט של Chrome נקרא תוסף חיצוני. למפתחים שרוצים להפיץ תוסף כחלק מתהליך ההתקנה של תוספים אחרים לתוכנות, או למנהלי רשתות שרוצים להפיץ תוסף ברחבי הארגון, Google Chrome תומך בשיטות הבאות להתקנת תוספים:

  • שימוש בקובץ JSON של העדפות (ל-Mac OS X ול-Linux בלבד)
  • שימוש ביומן הרישום של Windows (ב-Windows בלבד)

שתי הדרכים תומכות בהתקנת תוסף שמתארח ב-update_URL. ב-Windows וב-Mac, update_URL חייב להפנות לחנות האינטרנט של Chrome שבה התוסף צריך להתארח.

קובץ ההעדפות ב-Linux יכול להפנות לשרת שלכם שבו אתם מארחים את התוסף. קובץ ה-JSON של ההעדפות תומך גם בהתקנת תוסף מקובץ סיומת .crx במחשב Linux של המשתמש.

לפני שמתחילים

תחילה, מפרסמים את התוסף בחנות האינטרנט של Chrome, או אורזים קובץ .crx ויוצרים והיא תותקן בהצלחה.

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

לפני שתערכו את קובץ ההעדפות או את המרשם, חשוב לשים לב לנקודות הבאות:

  • המיקום המיועד של קובץ .crx של התוסף, או כתובת ה-URL לעדכון שממנה הוא הוצגו
  • הגרסה של התוסף (מקובץ המניפסט או מהדף chrome://extensions)
  • המזהה של התוסף (מהדף chrome://extensions אחרי טעינת המארז תוסף)

בדוגמאות הבאות ההנחה היא שהגרסה היא 1.0 והמזהה הוא aaaaaaaaaabbbbbbbbbbcccccccccc.

שימוש בקובץ העדפות

  1. אם מתקינים מקובץ ב-Linux, צריך להפוך את קובץ התוסף .crx לזמין במחשב שבו רוצים להתקין את התוסף. (העתקה לספרייה מקומית או לרשת לדוגמה, \\server\share\extension.crx או /home/share/extension.crx).
  2. יוצרים קובץ בשם הבא באחת מהתיקיות שרשומות בהמשך: aaaaaaaaaabbbbbbbbbbcccccccccc.json כאשר שם הקובץ (ללא הסיומת) תואם מזהה התוסף. המיקום שלו תלוי במערכת ההפעלה.

    Mac OS X:

    לגבי משתמש ספציפי: ~USERNAME/Library/Application Support/Google/Chrome/External Extensions/ לכל המשתמשים: /Library/Application Support/Google/Chrome/External Extensions/

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

    Linux:

    /opt/google/chrome/extensions/

    /usr/share/google-chrome/extensions/

    הערה: אם צריך, השתמשו ב-chmod כדי לוודא שהשדה aaaaaaaaaabbbbbbbbbbcccccccccc.json הקבצים קריאים לעולם.

  3. ב-Linux בלבד: אם אתם מתקינים מקובץ, יש לציין את המיקום והגרסה של התוסף באמצעות שדות בשם "external_crx" ו-'external_version' בקובץ שנוצר למעלה.

    • דוגמה:
    • json { "external_crx": "/home/share/extension.crx", "external_version": "1.0" }
    • הערה: צריך לסמן בתו בריחה (escape) כל \` character in the location. For example,\server\share\extension.crxwould be"\\server\share\extension.crx"..
    • אם ההתקנה היא מכתובת URL לעדכון, צריך לציין את כתובת ה-URL לעדכון של התוסף באמצעות שם השדה. "external_update_url".
    • דוגמה להתקנה מקובץ .crx מקומי (ב-Linux בלבד):
    • json { "external_update_url": "http://myhost.com/mytestextension/updates.xml" }
    • דוגמה להתקנה מחנות האינטרנט של Chrome (Mac ו-Linux):
    • json { "external_update_url": "https://clients2.google.com/service/update2/crx" }
    • אם אתה רוצה להתקין את התוסף רק עבור לוקאלים מסוימים של דפדפן, ניתן לציין רשימה נתמכת לוקאלים בשם השדה "supported_locale". הלוקאל יכול לציין לוקאל הורה כמו 'en', במקרה שהתוסף יותקן בכל הלוקאלים של אנגלית, כמו 'en-US', 'en-GB' וכו'. נבחר לוקאל אחר של דפדפן שלא נתמך על ידי התוסף, המיקום החיצוני התוספים יוסרו. אם 'supported_locales' חסרה, התוסף יהיה לכל שפה ואזור.
    • דוגמה:
    • json { "external_update_url": "https://clients2.google.com/service/update2/crx", "supported_locales": [ "en", "fr", "de" ] }
  4. שומרים את קובץ ה-JSON.

  5. מפעילים את Google Chrome ועוברים אל chrome://extensions. התוסף אמור להופיע ברשימה.

פתרון בעיות בהרשאות של Mac OS

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

  1. מפעילים את התוכנית Console. אפשר למצוא אותו בקטע /Applications/Utilities/Console.
  2. אם בסמל בקצה הימני במסוף כתוב 'הצגת רשימת היומנים', לוחצים על הסמל הזה. עמודה שנייה תופיע בצד ימין.
  3. לוחצים על 'הודעות המסוף'. בחלונית הימנית.
  4. מחפשים את המחרוזת לא ניתן לקרוא תוספים חיצוניים. אם יש בעיה בקריאת קבצים עם תוספים חיצוניים, תופיע הודעת שגיאה. חיפוש הודעת שגיאה אחרת ישירות מעליו, שאמור להסביר את הבעיה. לדוגמה, אם הודעת השגיאה הבאה מופיעה: "נתיב /Library/Application Support/Google/Chrome נמצא בבעלות הקבוצה הלא נכונה", עליך להשתמש chgrp או בתיבת הדו-שיח 'קבלת מידע' ב-Finder כדי לשנות את בעלי הקבוצה של הספרייה קבוצת אדמינים.
  5. לאחר תיקון הבעיה, מפעילים מחדש את Chrome. בודקים שהתוסף החיצוני מותקן עכשיו. הוא ייתכן ששגיאת הרשאות אחת מונעת מ-Chrome לזהות שגיאה שנייה. אם שתוסף חיצוני לא הותקן, יש לחזור על השלבים האלה עד שלא תופיע שגיאה אפליקציית מסוף.

שימוש ברישום של Windows

  1. מוצאים או יוצרים את המפתח הבא במרשם:
    • Windows בגרסת 32 ביט: HKEY_LOCAL_MACHINE\Software\Google\Chrome\Extensions
    • Windows בגרסת 64 ביט: HKEY_LOCAL_MACHINE\Software\Wow6432Node\Google\Chrome\Extensions
  2. יוצרים מפתח (תיקייה) חדש מתחת למפתח תוספים עם שם זהה למזהה של (לדוגמה, aaaaaaaaaabbbbbbbbbbcccccccccc).
  3. במפתח התוסף, יוצרים נכס 'update_url' ומגדירים אותו לערך: "https://clients2.google.com/service/update2/crx" (שמפנה ל-crx של התוסף חנות האינטרנט של Chrome):

    {
      "update_url": "https://clients2.google.com/service/update2/crx"
    }
    
  4. מפעילים את הדפדפן ועוברים אל chrome://extensions. התוסף אמור להופיע ברשימה.

עדכון והסרה

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

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

כדי להסיר את התוסף (לדוגמה, אם התוכנה הוסרה), יש להסיר את ההעדפה שלך קובץ (aaaaaaaaabbbbbbbbbcccccccccc.json) או על המטא-נתונים מהמרשם.

שאלות נפוצות

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

האם המתודולוגיה לאישור "התקנה מראש" עדיין נתמך על ידי Google Chrome מגרסה M33 ואילך?

כן, אבל רק כהתקנה מחנות האינטרנט של Chrome update_URL, לא מנתיב קובץ מקומי.

האם אפשר לציין כתובת URL כנתיב לתוסף החיצוני?

כן, צריך להשתמש בקובץ preferences JSON ל-Mac OS X ול-Linux. הרשם ל-Windows. התוסף חייב להתארח כפי שמוסבר במאמר אירוח. בקובץ ההעדפות, משתמשים 'external_update_url' כדי להפנות אל מניפסט עדכון שכולל את כתובת ה-URL של לתוסף. במרשם של Windows, משתמשים בפרמטר "update_url" לנכס.

מהן כמה מהשגיאות הנפוצות שמתרחשות במהלך ההתקנה באמצעות קובץ ההעדפות?

  • לא לציין את אותה מזהה/גרסה כמו זו שמפורטת ב.crx
  • קובץ ה- .json (aaaaaaaaaabbbbbbbbbbcccccccccc.json) נמצא במיקום שגוי או במזהה שגוי שאינו תואם למזהה התוסף.
  • שגיאת תחביר בקובץ JSON (שכחת להפריד בין הערכים בפסיק או להשאיר פסיק בסוף? במקום כלשהו)
  • ערך הכניסה של קובץ JSON מפנה לנתיב שגוי אל .crx (או נתיב שצוין אבל ללא שם קובץ)
  • לוכסנים הפוכים בנתיב UNC לא ניתן לסמן בתו בריחה (escape) (לדוגמה, "\\server\share\file" שגוי; הוא צריך להיות "\\\\server\\share\\extension")
  • בעיות בהרשאות בשיתוף רשת

מהן כמה מהשגיאות הנפוצות שמתרחשות במהלך ההתקנה באמצעות המרשם?

  • ללא ציון המזהה/הגרסה הזהים לאלה שרשומים בחנות האינטרנט של Chrome
  • המפתח נוצר במיקום שגוי במרשם
  • ערך הרישום במרשם מפנה לנתיב שגוי לקובץ .crx בחנות האינטרנט של Chrome
  • בעיות בהרשאות בשיתוף רשת

איך אפשר לעדכן בשלבים את הקבצים הבינאריים המותאמים ואת התוסף המקורי שלי?

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

מה קורה אם המשתמש מסיר את ההתקנה של התוסף?

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

איך יוצאים מרשימת החסימה?

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