חקר כיצד Project Treble מחולל מהפכה ב-ROMs מותאמים אישית. לקח פחות מיום אחד להעביר את אנדרואיד אוראו ל-Huawei Mate 9.
פורומים של XDA היו המפגש המרכזי של פיתוח ROM מותאם אישית במשך שנים. הודות לעבודה הקשה של המפתחים בפורומים שלנו, סמארטפונים ישנים רבים של אנדרואיד נשמרים בחיים על ידי ROMs מותאמים אישית, לפעמים שנים לאחר שהמכשירים ננטשו על ידי יצרנית המכשירים. למרות שרוב היצרנים משחררים בימינו שיטות לפתיחת מטעני האתחול, עיכובים תכופים במהדורות מקור הליבה החניקו את פיתוח ה-ROM המותאם אישית בסמארטפונים רבים. עם זאת, זה עשוי להשתנות בקרוב, הודות למשהו שנקרא "פרויקט טרבל"אשר הוכרז סמוך ליציאת אנדרואיד אוראו. הודות ל-Project Treble, הזמן שלוקח לנייד AOSP ROM למכשיר כבר לא אמור לקחת שבועות או חודשים - במקום זאת זה אמור לקחת ימים בלבד.
לאלו מכם שעוקבים אחרי סצנת ה-ROM המותאמת אישית במשך שנים, אולי אתם כבר מודעים עד כמה החדשות הללו משמעותיות. מפתח מוכר XDA OldDroid כינה את ההתגלות הזו "פְּרִיצַת דֶרֶך" בפיתוח AOSP ROM מותאם אישית. הודות לתמיכת Project Treble, למשל, הצלחתי לאתחל א אנדרואיד 8.0 Oreo ROM מתפקד כמעט במלואו ב-Huawei Mate 9-מכשיר שעד עכשיו לא ראה אפילו AOSP אחד אנדרואיד נוגט ROM.
ייתכן שבקרוב נראה מהפכה בפיתוח ROM מותאם אישית הודות למאמצי הפיתוח הראשוניים בחזית זו על ידי חבר בכיר ב-XDA phhusson. לאחר 20 שעות של עבודה במחקר, פיתוח וניפוי באגים איתי, phhusson יצר תמונת מערכת שיכולה להיות אתחול במספר מכשירים מיצרנים שונים ועם SoCs שונים לחלוטין. לדוגמה, אותה תמונת מערכת שאותחל ב-Huawei Mate 9 משלי, מופעלת גם ב-Honor 8 Pro, Honor 9, Sony Xperia XZ1 Compact וה-Essential Phone. זה 3 יצרני OEM שונים (Huawei/Honor, Sony ו-Essential) ו 2 SoCs שונים (HiSilicon Kirin 960 ו-Qualcomm Snapdragon 835) שבהם תמונת מערכת יחידה זו יכולה לאתחל בהצלחה.
ייתכן שבעתיד נוכל לראות תמונת מערכת אחת שיכולה לעבוד על עשרות סמארטפונים שונים של אנדרואיד, בדומה לאופן שבו Microsoft Windows יכול לפעול כמעט על כל מחשב חוּמרָה. על מנת לעודד התפתחות נוספת בחזית זו, פתחנו את א פורום חדש המוקדש לפרויקט טרבל מכשירים מופעלים. הפורום מיועד למפתחים ברגע זה, אז אנא הימנע מפתיחת שרשור חדש אלא אם כן אתה מעוניין לתרום לפיתוח. אם אתה רוצה לעזור בבדיקת תמונות מערכת תואמות Treble, אל תהסס להשאיר הערות על שרשורים קיימים.
הצטרף לפורום פיתוח טרבל של פרויקט
בהתחשב במשמעות של התפתחות זו ובמורכבות הנושא, חשבתי שאגש למאמר זה קצת אחרת מהאחרים. אני אריץ רשימה של נקודות שמסבירה כמה שאלות נפוצות שיכולות להיות לאנשים, כמו גם אציין עובדות מפתח לגבי הפיתוח האחרון הזה.
מה זה פרויקט טרבל?
Project Treble מתואר לרוב כניסיון של גוגל לעצב את מסגרת מערכת ההפעלה אנדרואיד כדי להפריד בין קוד ספציפי של ספקים. בוא נפרק את הדברים קצת יותר:
- תהליך העדכון המלא להבאת גרסת אנדרואיד חדשה למכשירים הוא נושא ארוך ומורכב, אבל סוני עשתה עבודה מצוינת עם האינפוגרפיקה הזו אשר מתאר את השלבים הבסיסיים.
- ה"ספק" מתייחס בדרך כלל ליצרני סיליקון כגון קוואלקום, אך יכול להתייחס גם ליצרן של כל חומרה קניינית אחרת שנמצאת במכשיר. "יצרן ההתקנים" או "OEM" בדרך כלל צריך לחכות שהספק יעדכן את הקוד שלו כך שהחומרה הקניינית תעבוד עם מסגרת מערכת ההפעלה אנדרואיד בגרסה חדשה יותר של אנדרואיד.
- עם זאת, מה שקורה עם Project Treble הוא שגוגל דורשת את זה קוד ספציפי לספק יופרד ממסגרת מערכת ההפעלה אנדרואיד ובמקום זאת לחיות ביישום ספק משלו. בדרך כלל זה אומר שקיימת כעת מחיצת /ספק נפרדת בסמארטפונים התומכים בטרבל המכילה חבורה של HALs (Hardware Abstraction Layers).
- יתר על כן, הספקים חייבים ליישם קוד המאפשר למסגרת מערכת ההפעלה אנדרואיד לתקשר עם HALs בצורה סטנדרטית. זה נעשה באמצעות HIDL (שפת הגדרת ממשק HAL). עם זה, יצרן OEM יכול לעבוד על עדכון אנדרואיד מבלי לחכות לספקים לעדכן את ה-HAL שלהם. תיאורטית, זה אמור להאיץ את כל תהליך העדכון של אנדרואיד שכן ספקים יכולים לעדכן את הקוד שלהם בכל עת דרך חנות Play, לדוגמה.
- כדי לעזור להבין מה זה HAL וכיצד הוא קשור לאנדרואיד, בואו נשקול אנלוגיה. דמיינו מכונית. ההגה והבלמים הם ה-HAL בעוד שהנהג הוא מסגרת מערכת ההפעלה אנדרואיד. הנהג (אנדרואיד) מזיז את ההגה ולוחץ על הבלמים (ה-HAL) על מנת לשלוט בתנועת המכונית (החומרה).
- עכשיו תארו לעצמכם אם חיינו בעולם שבו כל יצרן רכב החליט לעצב את גלגלי ההגה שלו או לארגן מחדש את הבלמים בצורה שונה לחלוטין. אם אתה מכניס נהג לרכב חדש, הם עלולים להתבלבל עם אופן הטיפול הראשוני ברכב. אבל הודות לתקנים, כל נהג צריך להכיר את אופן הפעלת ההגה והבלמים כמעט בכל מכונית. יתר על כן, בית הספר לנהיגה מלמד את כל הנהגים את הדרך הנכונה להפעיל רכב. באנלוגיה זו, תקני הרכב הם Project Treble ובית הספר לנהיגה הוא HIDL.
אילו מכשירים יקבלו תמיכה ב-Project Treble?
- כל המכשירים ש השקה עם אנדרואיד 8.0 אוראו או מעל חייב לתמוך באופן מלא פרויקט טרבל.
- כל המכשירים ש שדרג לאנדרואיד 8.0 אוראו הם לא דרוש לתמיכה מלאה בפרויקט טרבל.
- המכשירים שיש להם עדכונים (מהדורות רשמיות או בטא סגורות) לאנדרואיד 8.0 אוראו ותומכים ב-Treble כוללים את הדברים הבאים:
- גוגל פיקסל
- גוגל פיקסל XL
- Huawei Mate 9
- Honor 8 Pro
- כבוד 9
- טלפון חיוני
- לא סביר שמכשירים כלשהם יקבלו תמיכת Project Treble באופן לא רשמי באמצעות פיתוח ROM מותאם אישית. HALs הם לא קוד פתוח אחרי הכל.
מדוע Project Treble כל כך חשוב עבור AOSP ROMs?
- כדי להבטיח שקוד הספק מופרד כהלכה ממסגרת מערכת ההפעלה של אנדרואיד באופן שבו הפרויקט טרבל דורש, גוגל הקימה חבילת בדיקה של ספקים (VTS) שהמכשירים חייבים לעבור כדי לקבל אישור על ידי גוגל. הסמכת Google חשובה כי בלעדיה מכשיר אינו רשאי לשלוח עם אפליקציות ושירותי Google Play מותקנים מראש.
- אחת הדרישות ב-VTS היא מכשיר התומך בטרבל חייב להיות מסוגל לאתחל א מבנה AOSP גולמי וגנרי. בגלל דרישה זו, יצרני OEM צריכים לשלוח מכשירים שיכולים לאתחל את AOSP ללא בעיות.
- למרות שה-ROM המדויק שגוגל משתמשת בו ומשתפת עם יצרני OEM עבור VTS אינו פומבי, חבר בכיר ב-XDA Phhusson הצליח להבין כיצד ליצור מחדש את ה-ROM הזה מהמקור.
- לפיכך, יש לנו כעת AOSP ROM עובד כלומר מובטח שניתן לאתחל במכשירי Project Treble. רוב העבודה נעשתה כבר על ידי יצרני OEM וספקים, כך שמפתחים עצמאיים בפורומים שלנו כבר לא צריכים להתעסק עם קוד מקור ליבה או האקריית HAL. בתיאוריה, AOSP ROM צריך "פשוט לעבוד", מה שהוכחנו שהוא נכון בעצם במכשירים שבדקנו.
- כרגע, תאימות היא לא 100% עם כל המכשירים ניתן לאתחל את תמונת המערכת. יש גם כמה תנאי המירוץ שצריך להבין. עם זאת, פרויקט טרבל מצמצם באופן משמעותי את כמות עבודת הפיתוח הדרוש להעברת ROM AOSP למכשירים שאינם של Google. עם שיתוף פעולה של מפתחים נוספים אצלנו פורום פרויקט טרבל, אנו מצפים לראות פיתוח מכשירי Treble הולך רחוק.
כיצד אוכל לנסות את אנדרואיד אוראו במכשיר שלי עכשיו?
אם אתה באמת הרפתקן ורוצה לנסות את אחת ממערכות ה-Project Treble האלה בטלפון שלך עכשיו, ל-phhusson יש את תמונות המערכת שאתה צריך להוריד עליהן השרשור שלו בפורום Project Treble שלנו. עם זאת, יש כמה דברים שאתה צריך לזכור:
- תצטרך א טוען אתחול לא נעול וצריך להכיר את השימוש פקודות fastboot להבהב תמונות.
- המכשיר שלך חייב כבר מריץ את אנדרואיד אוראו. תמונות מערכת אלו אינן "משדרגות" את המכשיר שלך. אם אתה מפעיל אחד ממכשירי Huawei/Honor המוזכרים במאמר זה, אתה יכול לחפש בפורומים שלנו מדריך או להשתמש ב- שירות FunkyHuawei.club כדי לעדכן באופן לא רשמי את הטלפון שלך לאחד ממבני הבטא הסגורים של Oreo.
- אתה חייב להיות מוכן לאבד נתונים או לרענן את תמונות היצרן תוך כדי בדיקה. הדרך הטובה ביותר להבטיח אתחול זה היא למחוק את מחיצת נתוני המשתמש, הכוללת מחיקת כל התוכן באחסון הפנימי שלך. כמובן שאתה יכול לעשות גיבויים ולהעביר אותם לאחר שתסיים.
- בניית AOSP אלה הם כַּיוֹםלא מיועד לשימוש כנהגים יומיים. הם עצמות חשופות ביותר ואינם מציעים הרבה תכונות או אפליקציות מותקנות מראש. תצטרך להזיז את אפליקציות Google בעצמך. תצטרך להזין ידנית את הגדרות ה-APN של הספק שלך כדי לגרום לנתונים ניידים לעבוד (אם זה עובד). הדברים יהיו בעייתיים עד שייעשה מאמצי פיתוח נוספים.
סיכום
גוגל לא צחקו כשאמרו שפרויקט טרבל הוא אולי אחד השינויים הגדולים ביותר אי פעם לאופן הפעולה של אנדרואיד. אנחנו יכולים לראות בעצמנו, ממש כאן ועכשיו, כמה השפעה יכולה להיות לזה. טרבל עשוי להיות הדחיפה שקהילת הפיתוח צריכה כדי להחיות את סצנת ה-ROM המותאמת אישית. לקח פחות מיום אחד לאתחל AOSP ROM כמעט מלא ב-Huawei Mate 9. אני נרגש לראות את העבודה שתיעשה עבור מכשירים אחרים התומכים בטרבל.