סקירה כללית של פרויקטים

פרויקט ב-Android Studio מכיל את כל מה שמגדיר את סביבת עבודה לאפליקציה, מקוד מקור ונכסים ועד בדיקת קוד ו-build הגדרות אישיות.

כשמתחילים פרויקט חדש, מערכת Android Studio יוצרת את את המבנה של כל הקבצים שלכם, כך שיהיו גלויים החלון פרויקט ב-Android Studio. כדי לפתוח את החלון, בוחרים באפשרות תצוגה > Windows בכלי > פרויקט.

הדף הזה מספק סקירה כללית של הרכיבים העיקריים בפרויקט.

מודולים

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

אפשר להשתמש במודולים נוספים כשיוצרים ספריות קוד או ליצור קבוצות שונות של קוד ומשאבים בסוגים שונים של מכשירים, כמו טלפונים וגאדג'טים לבישים, אך שומרים את כל הקבצים להיות באותו פרויקט ולשתף קוד כלשהו.

כדי להוסיף מודול חדש לפרויקט, לוחצים על קובץ > חדש > מודול חדש.

ב-Android Studio יש כמה סוגים שונים של מודולים:

מודול האפליקציה ל-Android
מספק מאגר של האפליקציה קוד המקור, קובצי המשאבים וההגדרות ברמת האפליקציה, כמו את קובץ ה-build ברמת המודול ואת קובץ המניפסט של Android. מתי כשיוצרים פרויקט חדש, מודול האפליקציה שמוגדר כברירת מחדל נקרא 'אפליקציה'.

מבצעים של Android Studio הסוגים הבאים של מודולים של אפליקציות:

  • טלפון ו טאבלט
  • Automotive
  • Wear OS
  • טלוויזיה
  • מחולל הפרופיל הבסיסי
  • השוואה לשוק

כל מודול מספק קבצים חיוניים וכמה תבניות קוד שמתאים לאפליקציה או לסוג המכשיר המתאימים.

למידע נוסף על הוספת מודול, קראו את המאמר מוסיפים מודול למכשיר חדש.

מודול תכונות
מייצג תכונה מודולרית של האפליקציה שיכולה לנצל את היתרונות של Play העברת תכונות. לדוגמה, באמצעות מודולים של תכונות תוכלו לספק למשתמשים עם תכונות מסוימות של האפליקציה על פי דרישה או כחוויות מיידיות באמצעות Google Play ללא התקנה.

ב-Android Studio יש מודולים של תכונות מהסוגים הבאים:

  • מודול של תכונה דינמית
  • מודול של ספריית תכונות דינמיות מיידיות

למידע נוסף, אפשר לקרוא על העברת פיצ'רים של Play.

מודול ספרייה
מספק מכל לקוד לשימוש חוזר, שאותו אפשר יכול לשמש כתלות במודולים אחרים של אפליקציות או לייבא אותן פרויקטים. מבחינה מבנית, מודול ספרייה דומה למודול אפליקציה, אבל כשהוא נוצר, הוא יוצר קובץ ארכיון קוד במקום APK, כך שלא ניתן להתקין אותו מכשיר.

בחלון יצירת מודול חדש, מתבצעת ב-Android Studio הסוגים הבאים של מודולים של ספריות:

  • ספריית Android: מכילה את כל סוגי הקבצים הנתמכים בפרויקט Android מלבד קוד C++ מקורי, כולל קוד המקור של Java ו-Kotlin, משאבים וקובצי מניפסט. תוצאת ה-build היא קובץ ארכיון של Android (AAR) שאפשר להוסיף בתור או תלות במודולים של האפליקציה ל-Android.
  • ספרייה מקורית של Android: מכילה את כל סוגי הקבצים הנתמכים בפרויקט Android, בדומה לספריית Android. עם זאת, גם ספריות המקור של Android יכול להכיל קוד מקור מקורי של C++. תוצאת ה-build היא קובץ ארכיון של Android (AAR) שאפשר להוסיף כתלות במודולים של אפליקציות ל-Android.
  • ספריית Java או Kotlin: מכילה רק קובצי מקור של Kotlin או Java. תוצאת ה-build היא קובץ Java Archive (JAR) שאפשר להוסיף בתור אם יש לך תלות במודולים של אפליקציות ל-Android או בפרויקטים אחרים שלKotlin או Java.

לפעמים מודולים נקראים פרויקטים משניים, Gradle מתייחסת גם למודולים כאל פרויקטים.

כאשר יוצרים מודול ספרייה ורוצים להוסיף אותו כתלות מודול האפליקציה ל-Android, צריך להצהיר עליו כך:

מגניב

dependencies {
    implementation project(':my-library-module')
}

Kotlin

dependencies {
    implementation(project(":my-library-module"))
}

קובצי פרויקט

כברירת מחדל, קובצי הפרויקט שלכם מוצגים ב-Android Studio תצוגת Android. התצוגה הזו לא משקפת את היררכיית הקבצים עצמה בדיסק. במקום זאת, מודולים וסוגי קבצים שונים כדי לפשט את הניווט בין קובצי המקור העיקריים של הפרויקט, ספריות או קבצים מסוימים שאינם בשימוש נפוץ.

חלק מההבדלים המבניים בין תצוגת Android בדיסק, התצוגה של Android היא:

  • הצגת כל קובצי התצורה שקשורים ל-build של הפרויקט ברמה העליונה קבוצת Gradle Script.
  • מציג את כל קובצי המניפסט של כל מודול בקבוצה ברמת המודול כאשר כוללים קובצי מניפסט שונים לטעמים שונים של מוצרים ולסוגי build שונים.
  • הצגת כל קובצי המשאבים החלופיים בקבוצה אחת במקום בתיקיות נפרדות, לכל מזהה משאב. לדוגמה, כל צפיפות הצפיפות גרסאות של סמל מרכז האפליקציות שלך מופיעות זו לצד זו.

בכל מודול של אפליקציה ל-Android, הקבצים מוצגים בקבוצות הבאות:

מניפסטים
מכיל את הקובץ AndroidManifest.xml.
Java
מכיל את קובצי קוד המקור של Kotlin ו-Java, מופרדים לפי שמות חבילות, כולל קוד הבדיקה של JUnit.
רזולוציה
מכיל את כל המשאבים שאינם קוד, כמו מחרוזות ממשק משתמש ו תמונות מפת סיביות (bitmap), מחולקות לספריות משנה מתאימות. אפשר לקבל מידע נוסף על סוגי המשאבים האפשריים, ראו סקירה כללית של משאבי האפליקציות.

תצוגת הפרויקט

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

כשבוחרים בתצוגה Project, אפשר לראות הרבה יותר קבצים וספריות, כולל:

module-name/
build/
מכיל פלט של גרסאות build.
libs/
מכילה ספריות פרטיות.
src/
מכיל את כל קובצי הקוד והמשאבים למודול הבאים ספריות משנה:
androidTest/
מכיל קוד לבדיקות אינסטרומנטציה שפועלות במכשיר Android. מידע נוסף זמין במאמר הבא: בודקים ב-Android Studio.
cpp/
מכיל קוד C או C++ מקורי באמצעות ממשק המקור של Java (JNI). מידע נוסף זמין במאמר הבא: למסמכי התיעוד של Android NDK.
main/
מכיל את ה"ראשי" קובצי קבוצת המקור: הקוד של Android ומשאבים שמשותף לכל גרסאות ה-build (קבצים לגרסאות build אחרות נמצאים בספריות אחות, כמו src/debug/ עבור סוג build לניפוי באגים):
AndroidManifest.xml
תיאור של אופי האפליקציה וכל אחד מהרכיבים שלה. מידע נוסף זמין במאמר מניפסט של אפליקציה סקירה כללית
java/
מכיל מקורות קוד Kotlin או Java, או את שניהם, אם לאפליקציה יש גם Kotlin וגם Java קוד המקור.
kotlin/
מכיל רק מקורות קוד של Kotlin.
res/
מכיל משאבים של אפליקציות, כמו קבצים ניתנים לשרטוט וקובצי מחרוזות של ממשק משתמש. לקבלת מידע נוסף מידע נוסף, אפשר לעיין סקירה כללית של משאבי אפליקציות.
assets/
מכילה קבצים שצריך להדר לקובץ APK כפי שהם. לדוגמה, זהו מיקום טוב למרקמים ולנתוני משחקים. אפשר לנווט בספרייה הזאת באותו אופן כמו במערכת קבצים רגילה, באמצעות מזהי URI וקריאת קבצים כזרם של בייטים באמצעות AssetManager
test/
מכיל קוד לבדיקות מקומיות שרצות ב-JVM של המארח שלך.
build.gradle או build.gradle.kts (מודול)
הפעולה הזו קובעת את תצורות ה-build הספציפיות למודול. build.gradle הוא/היא את שם הקובץ הנכון אם משתמשים ב-Groovy כשפת הסקריפט ל-build, build.gradle.kts אם משתמשים בסקריפט Kotlin.
build.gradle או build.gradle.kts (פרויקט)
כאן תוגדר תצורת ה-build שתחול על כל המודולים. build.gradle הוא שם הקובץ הנכון אם משתמשים ב-Groovy כשפת הסקריפט ל-build build.gradle.kts אם משתמשים בסקריפט Kotlin. הקובץ הזה הוא חלק בלתי נפרד מהפרויקט, לכן חשוב לשמור עליו בבקרת גרסאות עם כל שאר קוד המקור.

מידע נוסף על קובצי build אחרים זמין במאמר הגדרת ה-build.

הגדרות של מבנה הפרויקט

כדי לשנות הגדרות שונות בפרויקט Android Studio, צריך לפתוח את תיבת הדו-שיח Project Buildure (מבנה הפרויקט) בלחיצה על הסמל קובץ > מבנה הפרויקט. הוא מכיל את לסעיפים הבאים:

  • פרויקט: הגדרת הגרסה של Gradle ו- הפלאגין Android Gradle ואת שם המיקום של המאגר.
  • מיקום ה-SDK: מגדיר את המיקום של ה-JDK, Android SDK ו-Android NDK שבהם משתמשים בפרויקט שלך.
  • משתנים: מאפשרים לערוך משתנים שנמצאים בשימוש ב-build שלכם. סקריפטים.
  • מודולים: עריכת גרסת build ספציפית למודול הגדרות אישיות, כולל ה-SDK המינימלי והיעד, חתימת האפליקציה ותלויות של ספריות. דף ההגדרות של כל מודול מחולק לכרטיסיות הבאות:
    • מאפיינים: מציין את גרסאות ה-SDK וה-build שיהיו בשימוש כדי להדר את המודול.
    • חתימה: מציין את האישור שישמש לחתום על אפליקציה.
  • תלות: פירוט של הספרייה, הקובץ והמודול של המודול הזה. ניתן להוסיף, לשנות ולמחוק יחסי תלות מהחלונית הזו. למידע נוסף על יחסי תלות של מודולים, ראו הגדרה של וריאציות build

  • יצירת וריאנטים: מאפשרת להגדיר סוגי build בטעמים שונים לפרויקט שלך.

    • טעמים: מאפשרים לכם ליצור כמה טעמים של build, כל טעם מציין מערך של הגדרות תצורה, כמו גרסת ה-SDK המינימלית וגרסת היעד של המודול, קוד גרסה ו שם הגרסה.

      לדוגמה, אפשר להגדיר טעם אחד שיש לו גרסת SDK מינימלית של 21 ו-SDK יעד של 29, ובגרסת יעד נוספת גרסת ה-SDK המינימלית היא 24 וגרסת היעד של ה-SDK היא 33.

    • סוגי Build: מאפשר ליצור ולשנות build הגדרות אישיות, כפי שמתואר בהגדרת וריאנטים של build. כברירת מחדל, בכל מודול יש ניפוי באגים, השקה של גרסאות build, וניתן להגדיר סוגים נוספים לפי הצורך.