راه اندازی برای توسعه AOSP (9.0 یا بالاتر)

قبل از دانلود و ساخت شاخه main سورس اندروید، مطمئن شوید که سخت افزار شما الزامات لازم را دارد و نرم افزار مورد نیاز به درستی نصب شده است. همچنین باید با اصطلاحات زیر آشنا باشید:

Git
Git یک سیستم کنترل نسخه توزیع شده رایگان و متن باز است. اندروید از Git برای عملیات محلی مانند شاخه‌بندی، commits، diffs و ویرایش‌ها استفاده می‌کند. برای کمک به یادگیری Git، به مستندات Git مراجعه کنید.
مخزن
Repo یک پوشش پایتون در اطراف Git است که انجام عملیات پیچیده را در چندین مخزن Git ساده می کند. Repo جایگزین Git برای همه عملیات کنترل نسخه نمی شود، فقط انجام عملیات پیچیده Git را آسان تر می کند. Repo از فایل های مانیفست برای جمع آوری پروژه های Git در ابرپروژه اندروید استفاده می کند.
فایل مانیفست
فایل مانیفست یک فایل XML است که مشخص می‌کند پروژه‌های مختلف Git در منبع Android کجا در درخت منبع AOSP قرار می‌گیرند.

نیازهای سخت افزاری را برآورده کنید

ایستگاه کاری توسعه شما باید این الزامات سخت افزاری را برآورده کند یا از آن فراتر رود:

  • یک سیستم 64 بیتی x86.

  • حداقل 400 گیگابایت فضای دیسک رایگان برای بررسی و ساخت کد (250 گیگابایت برای بررسی + 150 گیگابایت برای ساخت).

  • حداقل 64 گیگابایت رم. گوگل از ماشین های ۷۲ هسته ای با ۶۴ گیگابایت رم برای ساخت اندروید استفاده می کند. با این پیکربندی سخت افزاری، تقریباً 40 دقیقه برای ساخت کامل اندروید و تنها چند دقیقه برای ساخت تدریجی اندروید طول می کشد. در مقابل، برای ساخت کامل با یک دستگاه 6 هسته ای با 64 گیگابایت رم تقریباً 6 ساعت طول می کشد.

نیازهای سیستم عامل را برآورده کنید

ایستگاه کاری توسعه شما باید هر توزیع لینوکس 64 بیتی را با کتابخانه GNU C (glibc) 2.17 یا بالاتر اجرا کند.

بسته های مورد نیاز را نصب کنید

برای ساخت اندروید 11 یا بالاتر، باید از اوبونتو 18.04 یا بالاتر استفاده کنید. برای نصب بسته های مورد نیاز برای اوبونتو 18.04 یا جدیدتر، دستور زیر را اجرا کنید:

sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev libc6-dev-i386 x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig

در بین بسته های نصب شده، این دستور Git را نصب می کند که برای دانلود سورس AOSP استفاده می شود.

نرم افزار مورد نیاز را نصب کنید

قبل از اینکه بتوانید با AOSP کار کنید، باید OpenJDK، Make، Python 3 و Repo را نصب کنید. شاخه اصلی AOSP اندروید دارای نسخه های از پیش ساخته شده OpenJDK، Make و Python 3 است، بنابراین نیازی به مراحل نصب اضافی نیست. قسمت زیر نحوه نصب Repo را توضیح می دهد.

Repo را نصب کنید

برای نصب Repo مراحل زیر را دنبال کنید:

  1. اطلاعات بسته فعلی را دانلود کنید:

    sudo apt-get update
    
  2. برای نصب لانچر Repo دستور زیر را اجرا کنید:

    sudo apt-get install repo
    

    راه‌انداز Repo یک اسکریپت پایتون را ارائه می‌کند که یک پرداخت را اولیه می‌کند و ابزار کامل Repo را دانلود می‌کند.

    در صورت موفقیت، به مرحله 4 بروید.

  3. (اختیاری) با استفاده از سری دستورات زیر Repo را به صورت دستی نصب کنید:

    export REPO=$(mktemp /tmp/repo.XXXXXXXXX)
    curl -o ${REPO} https://storage.googleapis.com/git-repo-downloads/repo
    gpg --recv-keys 8BB9AD793E8E6153AF0F9A4416530D5E920F5C65
    curl -s https://storage.googleapis.com/git-repo-downloads/repo.asc | gpg --verify - ${REPO} && install -m 755 ${REPO} ~/bin/repo
    

    سه دستور اول یک فایل موقت را تنظیم می کنند، Repo را در فایل دانلود می کنند و بررسی می کنند که کلید ارائه شده با کلید مورد نیاز مطابقت دارد. در صورت موفقیت آمیز بودن این دستورات، دستور نهایی لانچر Repo را نصب می کند.

  4. نسخه لانچر Repo را تأیید کنید:

    repo version
    

    خروجی باید نسخه 2.4 یا بالاتر را نشان دهد، به عنوان مثال:

    repo launcher version 2.45

یک فهرست خروجی جایگزین تنظیم کنید

به‌طور پیش‌فرض، خروجی هر بیلد در فهرست out/ درخت منبع منطبق ذخیره می‌شود. با صادر کردن متغیر محیطی OUT_DIR می توانید این دایرکتوری را لغو کنید. به عنوان مثال، اگر می خواهید خروجی خود را در درایو دیگری ذخیره کنید، می توانید OUT_DIR به آن درایو نشان دهید:

export OUT_DIR=my_other_drive

بعدش چی؟