דרישות

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

דרישות חומרה

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

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

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

דרישות תוכנה

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

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

מערכת הפעלה

אם אתה מפתח נגד ענף master של AOSP, השתמש באובונטו 18.04 (Bionic Beaver) .

JDK

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

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

חבילות מפתח

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

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

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

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

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

אנדרואיד 8.0 ומעלה תומך רק ב- Clang/LLVM לבניית פלטפורמת אנדרואיד. הצטרף לקבוצת android-llvm כדי להעלות שאלות ולקבל עזרה. דווח על בעיות NDK/מהדר ב- NDK GitHub .

עבור ערכת הפיתוח המקורית (NDK) ובליבות מדור קודם, ניתן להשתמש גם ב-GCC 4.9 הכלול בענף master של AOSP (תחת prebuilts/ ).