הדרישות

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

דרישות חומרה

תחנת העבודה לפיתוח שלך צריכה לעמוד בדרישות החומרה הבאות או לחרוג ממנה:

  • נדרשת סביבת 64 סיביות עבור אנדרואיד 2.3.x (Gingerbread) ומעלה, כולל הסניף הראשי. אתה יכול לקמפל גרסאות ישנות יותר במערכות 32 סיביות.
  • לפחות 250GB של שטח דיסק פנוי כדי לבדוק את הקוד ו-150GB נוספים כדי לבנות אותו. אם אתה עורך מספר בנייה, אתה צריך שטח נוסף.
  • גוגל ממליצה על לפחות 64 GB של זיכרון RAM ולא בודקת עם פחות. סכומים נמוכים יותר מובילים להרג מבני OOM.

החל מיוני 2021, גוגל משתמשת במכונות 72 ליבות עם 64 ג'יגה-בייט של זיכרון RAM פנימי, אשר אורכות כ-40 דקות לבנייה מלאה (ורק כמה דקות לבנייה מצטברת, תלוי בדיוק באילו קבצים שונו). לעומת זאת, מכונה בעלת 6 ליבות עם כמות דומה של זיכרון RAM לוקחת 3 שעות.

דרישות תוכנה

הענף main של AOSP פותח ונבדק באופן מסורתי במהדורות של אובונטו לטווח ארוך (LTS), אך ניתן להשתמש בהפצות אחרות. ראה הקמת סביבת Build עבור חבילות נדרשות נוספות והפקודות להתקנתן.

בתחנת העבודה שלך חייבת להיות התוכנה הרשומה למטה. דרישות אלו חלות על הסניף main של AOSP. עבור גרסאות אנדרואיד 8.0 (Oreo או O) עד 5.0 (Lollipop או L), שקול להשתמש ב- Dockerfile הכלול כדי להקל על ההתקנה של כל החבילות הנדרשות. לשיטה הידנית, ראה תמיכה בגרסאות ישנות יותר .

מערכת הפעלה

אם אתה מפתח נגד הענף main של AOSP, השתמש באובונטו 18.04 ואילך.

JDK

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

גרסאות ישנות יותר של אנדרואיד דורשות התקנה נפרדת של ה-JDK. באובונטו, השתמש ב-OpenJDK.

חבילות מפתח

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

ודא שלמערכת שלך יש Python 3 .

קבצים בינאריים של מכשיר

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

בניית שרשרת כלים

אנדרואיד 8.0 ומעלה תומך רק בבנייה עם clang/LLVM, כולל עבור כלי מארח. מהדורות ישנות יותר השתמשו במקום זאת ב-GCC. בשני המקרים, אנדרואיד תומכת בבנייה רק ​​כאשר המהדר המובנה מראש נרשם תחת prebuilts/ .