تتناول هذه الصفحة كيفية الإعداد للتطوير باستخدام Android 8.0 أو الإصدارات الأقدم. للتعرّف على كيفية إنشاء الإصدار 9.0 من نظام التشغيل Android والإصدارات الأحدث، اطّلِع على مقالة الإعداد لتطوير AOSP.
الإعداد لتطوير AOSP (من الإصدار 5.0 إلى الإصدار 8.0)
بالنسبة إلى الإصدارات من Android 5.0 إلى 8.0، ننصحك باستخدامملف Dockerfile المضمّن لسهولة تثبيت جميع الحِزم المطلوبة.
أنظمة التشغيل
عادةً ما يكون نظام التشغيل Android مزوّدًا بـ GNU Linux. من الممكن أيضًا إنشاء نظام Android في جهاز افتراضي على أنظمة غير متوافقة، مثل Mac OS X.
تنصح Google بإنشاء التطبيق على GNU Linux. عادةً ما يشغِّل نظام إنشاء Android ملف VMART على جهاز الإنشاء لتجميع ملفات DEX الخاصة بالنظام مسبقًا. لا يمكن تشغيل مكتبة ART إلا على نظام التشغيل Linux، لذلك يتخطّى نظام الإصدار خطوة التجميع المسبق هذه على أنظمة تشغيل غير Linux، ما يؤدي إلى إصدار Android ذي أداء منخفض.
GNU Linux
- Android 6.0 - Android 8.0: Ubuntu 14.04 (موثوق به)
- Android 5.x: Ubuntu 12.0
Mac OS X (Intel/x86)
- Android 6.0 - AOSP 8.0: الإصدار 10.10 من نظام التشغيل Mac OS X (Yosemite) أو الإصدارات الأحدث مع Xcode 4.5.2 وأدوات سطر الأوامر
- Android 5.x: الإصدار Mac OS X v10.8 (Mountain Lion) مع Xcode 4.5.2 وأدوات سطر الأوامر
JDK
Android 7.0 - Android 8.0:
- Ubuntu: OpenJDK 8
- Mac OS X: JDK 8u45 أو إصدار أحدث
Android 5.x (Lollipop) - Android 6.0 (Marshmallow):
- Ubuntu: OpenJDK 7
- نظام التشغيل Mac OS X: jdk-7u71-macosx-x64.dmg
الإعداد لتطوير AOSP (من الإصدار 2.3 إلى 4.4)
يوفّر هذا القسم بعض الإرشادات حول كيفية إعداد الإصدارات من Android 2.3 إلى Android 4.4.
أنظمة التشغيل
يتم عادةً إنشاء نظام التشغيل Android باستخدام GNU Linux. يمكن أيضًا إنشاء Android في جهاز افتراضي يعمل على أنظمة غير متوافقة مثل Windows.
توصي Google بالإنشاء على GNU Linux. عادةً ما يشغِّل نظام إنشاء Android ملف VMART على جهاز الإنشاء لتجميع ملفات DEX الخاصة بالنظام مسبقًا. لا يمكن تشغيل مكتبة ART إلا على نظام التشغيل Linux، لذلك يتخطّى نظام الإصدار خطوة التجميع المسبق هذه على أنظمة تشغيل غير Linux، ما يؤدي إلى إصدار Android ذي أداء منخفض.
GNU Linux
- Android 2.3.x - Android 4.4: Ubuntu 12.04 (دقيق)
Mac OS X (Intel/x86)
- Android 4.1.x - Android 4.4.x: الإصدار 10.6 من نظام التشغيل Mac OS X (Snow Leopard) أو الإصدار 10.7 من نظام التشغيل Mac OS X (Lion) وXcode 4.2 (أدوات مطوّري البرامج من Apple)
- Android 2.3 - Android 4.0.x: الإصدار Mac OS X 10.5 (Leopard) أو الإصدار Mac OS X 10.6 (Snow Leopard) وحزمة تطوير البرامج (SDK) للإصدار Mac OS X 10.5
GNU make
بالنسبة إلى الإصدارات من Android 4.1.x إلى 4.4، استخدِم GNU make (gmake) 3.82. بالنسبة إلى الإصدارات من Android 2.3 إلى 4.0.x، عليك الرجوع إلى الإصدار 3.82 من gmake لتجنُّب أخطاء الإنشاء.
حِزم Xcode وغيرها
بالنسبة إلى الإصدار 10.8 من نظام التشغيل Mac OS X أو الإصدارات الأقدم، يمكنك تثبيت Xcode من موقع مطوّري تطبيقات Apple الإلكتروني. إذا لم تكن مسجلاً من قبل كمطوّر Apple، عليك إنشاء معرّف Apple لتنزيله.
في حال استخدام الإصدار 10.4 من نظام التشغيل Mac OS X، عليك أيضًا تثبيت Bison:
POSIXLY_CORRECT=1 sudo port install bison
بالنسبة إلى MacPorts، يمكنك إصدار الأمر التالي:
POSIXLY_CORRECT=1 sudo port install gmake libsdl git gnupg
بالنسبة إلى Homebrew، المشكلة:
brew install gmake libsdl git gnupg2
التراجع عن استخدام الإصدار 3.82 من gmake
في الإصدار 4.0.x من Android والإصدارات الأقدم، يتضمّن الإصدار 3.82 من gmake خطأً يمنع إنشاء Android. يمكنك تثبيت الإصدار 3.81 باستخدام MacPorts من خلال الخطوات التالية:
عدِّل
/opt/local/etc/macports/sources.conf
وأضِفfile:///Users/Shared/dports
فوق سطرrsync
.أنشئ الدليل
dports
:mkdir /Users/Shared/dports
في الدليل الجديد
dports
، نفِّذ ما يلي:svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
أنشئ فهرسًا للمنفذ في المستودع المحلي الجديد:
portindex /Users/Shared/dports
ثبِّت الإصدار الأقدم من gmake:
sudo port install gmake @3.81
JDK
- Android 2.3.x - Android 4.4.x:
- Ubuntu: Java JDK 6
- نظام التشغيل Mac OS X: Java JDK 6
JDK لنظام التشغيل Linux
ينطوي
المشروع المفتوح المصدر لنظام Android (AOSP)
على إصدارات مُعدّة مسبقًا من OpenJDK ضمن prebuilts/jdk/
، لذا لا يلزم إجراء عملية تثبيت إضافية.
تتطلب الإصدارات السابقة من Android تثبيت JDK بشكل منفصل. على Ubuntu، استخدِم OpenJDK.
لنظام التشغيل Ubuntu 15.04 والإصدارات الأحدث
شغِّل ما يلي:
sudo apt-get update
sudo apt-get install openjdk-8-jdk
لنظام التشغيل Ubuntu LTS 14.04
لا تتوفّر حِزم OpenJDK 8 متوافقة لنظام التشغيل Ubuntu 14.04. تم استخدام حِزم Ubuntu 15.04 OpenJDK 8 بنجاح مع Ubuntu 14.04. لا تعمل الإصدارات الأحدث من الحِزم (مثل الإصدارات المخصّصة لنظام التشغيل 15.10 16.04) على الإصدار 14.04 باستخدام التعليمات التالية.
نزِّل حِزم
.deb
للبنية 64 بت من old-releases.ubuntu.com.openjdk-8-jre-headless_8u45-b14-1_amd64.deb
باستخدام SHA2560f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
openjdk-8-jre_8u45-b14-1_amd64.deb
باستخدام SHA2569ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
openjdk-8-jdk_8u45-b14-1_amd64.deb
باستخدام خوارزمية SHA2566e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c
يمكنك اختياريًا التأكّد من صحة أرقام التجزئة للملفات التي تم تنزيلها مقارنةً بسلسلة SHA256 المدرَجة مع كل حزمة من الخطوة 1. على سبيل المثال، باستخدام أداة
sha256sum
:sha256sum {downloaded.deb file}
ثبِّت الحِزم التالية:
sudo apt-get update
شغِّل
dpkg
لكل ملف من ملفات.deb
التي نزّلتها. وقد يؤدي ذلك إلى حدوث أخطاء بسبب عدم توفّر التبعيات:sudo dpkg -i {downloaded.deb file}
لحلّ مشكلة عدم توفّر التبعيات:
sudo apt-get -f install
(اختياري) تحديث إصدار Java التلقائي
بشكل اختياري، بالنسبة لإصدارات Ubuntu المذكورة سابقًا، قم بتحديث إصدار Java الافتراضي بتشغيل:
sudo update-alternatives --config java
sudo update-alternatives --config javac
تثبيت الحزم المطلوبة لنظام التشغيل Ubuntu 14.04
شغِّل الأوامر التالية لتثبيت الحِزم المطلوبة لنظام التشغيل Ubuntu 14.04:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip$
تثبيت الحِزم المطلوبة لنظام التشغيل Ubuntu 12.04
شغّل الأوامر التالية لتثبيت الحزم المطلوبة لنظام التشغيل Ubuntu 12.04:
$ sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so