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

قبل از دانلود و ساخت آخرین نسخه اندروید (android16-qpr1-release) از سورس اندروید، مطمئن شوید که سخت‌افزار شما الزامات لازم را برآورده می‌کند و نرم‌افزارهای مورد نیاز به درستی نصب شده‌اند. همچنین باید با اصطلاحات زیر آشنا باشید:

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

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

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

  • یک سیستم ۶۴ بیتی x86.

  • حداقل ۴۰۰ گیگابایت فضای دیسک خالی برای بررسی و ساخت کد (۲۵۰ گیگابایت برای بررسی + ۱۵۰ گیگابایت برای ساخت).

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

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

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

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

برای ساخت اندروید ۱۱ یا بالاتر، باید از اوبونتو ۱۸.۰۴ یا بالاتر استفاده کنید. برای نصب بسته‌های مورد نیاز برای اوبونتو ۱۸.۰۴ یا بالاتر، دستور زیر را اجرا کنید:

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 را نصب کرده باشید. آخرین نسخه اندروید با نسخه‌های از پیش ساخته شده OpenJDK، Make و Python 3 ارائه می‌شود، بنابراین مراحل نصب اضافی لازم نیست. بخش زیر نحوه نصب Repo را توضیح می‌دهد.

نصب مخزن

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

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

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

    sudo apt-get install repo

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

    اگر موفق شدید، به مرحله ۴ بروید.

  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

    خروجی باید نسخه ۲.۴ یا بالاتر را نشان دهد، برای مثال:

    repo launcher version 2.45

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

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

export OUT_DIR=my_other_drive

بعدش چی؟