Android משתמש במספר פרויקטים אחרים של קוד פתוח. רוב הפרויקטים האלה נמצאים ב-WORKING_DIRECTORY/external/, ואפשר לבצע את השינויים בפרויקטים האלה באמצעות השלבים הבאים:
- עוברים אל
WORKING_DIRECTORY/external/upstream-project. - צפייה בקובץ
METADATA. בדרך כלל יש בקובץ הזה רשומה של כתובת URL שבה אפשר למצוא מידע על תרומה לפרויקט. - אחרי שמבצעים את השינויים בפרויקט במעלה הזרם, צריך להודיע למפתחי Android על הגרסה החדשה במעלה הזרם שכוללת את השינויים.
בהמשך הדף הזה מופיע מידע נוסף על תרומה לפרויקטים ספציפיים של upstream.
Bionic
רוב הקוד של Bionic מגיע מ-BSD, כך שאם השינוי לא מתייחס לקוד חדש ב-Bionic, צריך לבצע תיקון במקור ואז למשוך קובץ חדש שלם מ-BSD המתאים.
ליבת Android
מבצעים את כל השינויים במעלה הזרם. הנחיות כלליות אפשר למצוא במאמרים איך שולחים תיקונים לליבות משותפות של Android ופיתוח קוד ליבה ל-GKI.
טיפול נמרץ
מבצעים את כל השינויים בפרויקט ICU בכתובת external/icu (התיקיות icu4c/ ו-icu4j/) ב-ICU-TC. מידע נוסף זמין במאמר שליחת דיווחים על באגים ובקשות להוספת תכונות ב-ICU.
מוסיפים את התווית android לכל הבקשות ב-Jira שמועברות במעלה הזרם.
CLDR
רוב הנתונים הבלשניים ב-ICU מגיעים מפרויקט Unicode CLDR. שולחים את כל הבקשות לצוות CLDR בהתאם להנחיות שבמאמר תרומה ל-CLDR ומוסיפים את התווית android.
LLVM/Clang/Compiler-rt
כל השינויים בפרויקטים שקשורים ל-LLVM צריכים להתבצע במקור. מידע נוסף על האופן שבו Google בונה את ערכות הכלים שלנו ממקורות חיצוניים זמין במאמר Android Clang/LLVM Toolchain.
mksh
כדי לבצע שינויים בפרויקט MirBSD Korn Shell, אפשר לשלוח אימייל אל miros-mksh בדומיין mirbsd.org (לא נדרש מינוי כדי לשלוח אימייל) או דרך Launchpad.external/mksh