‫Android Studio 3.6 (פברואר 2020)

‫Android Studio 3.6 היא מהדורה מרכזית שכוללת מגוון של תכונות חדשות ושיפורים.

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

3.6.3 (אפריל 2020)

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

3.6.2 (מרץ 2020)

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

‫3.6.1 (פברואר 2020)

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

כלי עיצוב

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

תצוגה מפוצלת והגדלה בכלי עריכה של עיצובים

בתצוגה המפוצלת מוצגות בו-זמנית תצוגת העיצוב ותצוגת הטקסט

הגרסה הזו כוללת את העדכונים הבאים בכלי העריכה של העיצוב החזותי:

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

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

מידע נוסף זמין במאמר יצירת ממשק משתמש באמצעות כלי הפריסה.

כרטיסיית המשאבים של בוחר הצבעים

כדי לעזור לכם לעדכן במהירות ערכי משאבי צבע באפליקציה כשאתם משתמשים בכלי לבחירת צבעים ב-XML או בכלי העיצוב, סביבת הפיתוח המשולבת (IDE) מאכלסת עכשיו ערכי משאבי צבע בשבילכם.

בוחר צבעים עם ערכי צבעים

Resource Manager

העדכונים הבאים בוצעו ב-Resource Manager:

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

מידע נוסף זמין במאמר ניהול משאבי ממשק המשתמש של האפליקציה באמצעות Resource Manager.

עדכונים בפלאגין Android Gradle

הגרסה העדכנית של הפלאגין Android Gradle כוללת עדכונים רבים, כולל אופטימיזציות למהירות הבנייה, תמיכה בפלאגין Maven publishing ותמיכה ב-View Binding. מידע נוסף זמין בהערות המלאות על הגרסה.

הצגת הקישור

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

החלפת findViewById() באמצעות view binding מבטלת את הסיכון לחריגות של מצביע null שנובעות ממזהה תצוגה לא תקין.

כדי להפעיל את view binding, צריך להשתמש ב-Android Gradle plugin 3.6.0 ואילך ולכלול את הקוד הבא בכל מודול בקובץ build.gradle:

מגניב

  android {
      buildFeatures.viewBinding = true
  }
  

Kotlin

  android {
      buildFeatures.viewBinding = true
  }
  

החלת השינויים

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

מידע נוסף על ההבדל בין שתי הפעולות האלה זמין במאמר בנושא החלת שינויים.

שינוי מבנה של אפשרות בתפריט כדי להפעיל תמיכה באפליקציות ללא התקנה

אחרי שיוצרים את פרויקט האפליקציה, אפשר להפעיל את מודול הבסיס באופן מיידי בכל שלב באופן הבא:

  1. פותחים את החלונית Project (פרויקט) על ידי בחירה באפשרות View > Tool Windows > Project (תצוגה > חלונות כלים > פרויקט) בסרגל התפריטים.
  2. לוחצים לחיצה ימנית על מודול הבסיס, שבדרך כלל נקרא 'app', ובוחרים באפשרות Refactor > Enable Instant Apps Support (שינוי מבנה > הפעלת תמיכה באפליקציות מיידיות).
  3. בתיבת הדו-שיח שמופיעה, בוחרים את מודול הבסיס מהתפריט הנפתח.
  4. לוחצים על אישור.

הערה: האפשרות להפעיל באופן מיידי את מודול אפליקציית הבסיס מתוך האשף Create New Project (יצירת פרויקט חדש) הוסרה.

מידע נוסף זמין במאמר סקירה כללית של Google Play ללא התקנה.

ביטול ההסתרה של קוד בייט של מחלקה ושיטה בכלי לניתוח APK

כשמשתמשים בכלי לניתוח קובצי APK כדי לבדוק קובצי DEX, אפשר לפענח את בייטקוד של מחלקות ושיטות באופן הבא:

  1. בסרגל התפריטים, בוחרים באפשרות Build > Analyze APK (בנייה > ניתוח APK).
  2. בתיבת הדו-שיח שמופיעה, עוברים אל קובץ ה-APK שרוצים לבדוק ובוחרים אותו.
  3. לוחצים על פתיחה.
  4. ב-APK Analyzer, בוחרים את קובץ ה-DEX שרוצים לבדוק.
  5. בכלי לצפייה בקובץ DEX, טוענים את קובץ המיפוי של ProGuard עבור קובץ ה-APK שמנתחים.
  6. לוחצים לחיצה ימנית על הכיתה או על השיטה שרוצים לבדוק ובוחרים באפשרות הצגת קוד בייט.

כלים מקוריים

העדכונים הבאים תומכים בפיתוח מקורי (C/C++) ב-Android Studio.

תמיכה ב-Kotlin

התכונות הבאות של NDK ב-Android Studio, שבעבר נתמכו ב-Java, נתמכות עכשיו גם ב-Kotlin:

  • אפשר לעבור מהצהרת JNI לפונקציית ההטמעה המתאימה ב-C/C++. כדי לראות את המיפוי הזה, מעבירים את העכבר מעל סמן הפריט C או C++ ליד מספר השורה בקובץ קוד המקור המנוהל.

  • יצירה אוטומטית של פונקציית הטמעה של stub להצהרת JNI. קודם מגדירים את הצהרת ה-JNI ואז מקלידים jni או את שם השיטה בקובץ C/C++ כדי להפעיל אותה.

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

  • כשמשנים את השם (מבצעים רפקטורינג) של פונקציית הטמעה מקורית, כל הצהרות ה-JNI התואמות מתעדכנות. משנים את השם של הצהרת JNI כדי לעדכן את פונקציית ההטמעה המקורית.

  • בדיקת חתימה להטמעות JNI שקשורות באופן מרומז.

שיפורים אחרים ב-JNI

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

טעינה מחדש של APK לספריות Native‏ {:#3.6-reload-apk}

כבר לא צריך ליצור פרויקט חדש כשהקובץ APK בפרויקט מתעדכן מחוץ לסביבת הפיתוח המשולבת (IDE). ‫Android Studio מזהה שינויים ב-APK ומציע לכם לייבא אותו מחדש.

צירוף מקורות APK של Kotlin בלבד

עכשיו אפשר לצרף מקורות חיצוניים של חבילות APK שמבוססות על Kotlin בלבד כשמבצעים פרופיל ובאגים של חבילות APK מוכנות מראש. מידע נוסף זמין במאמר בנושא צירוף מקורות Kotlin/Java.

זיהוי דליפות בכלי לניתוח ביצועי הזיכרון

כשמנתחים dump של heap ב-Memory Profiler, אפשר עכשיו לסנן נתוני פרופילים שאולי מצביעים על דליפות זיכרון במופעים של Activity ושל Fragment באפליקציה.

סוגי הנתונים שמוצגים במסנן כוללים את הנתונים הבאים:

  • מופעי Activity שהושמדו אבל עדיין יש הפניה אליהם.
  • Fragment מקרים שבהם אין FragmentManager תקף, אבל עדיין יש הפניה אליו.

צירוף מקורות APK של Kotlin בלבד

עכשיו אפשר לצרף מקורות חיצוניים של חבילות APK שמבוססות על Kotlin בלבד כשמבצעים פרופיל ובאגים של חבילות APK מוכנות מראש. מידע נוסף זמין במאמר בנושא צירוף מקורות Kotlin/Java.

זיהוי דליפות בכלי לניתוח ביצועי הזיכרון

כשמנתחים dump של heap ב-Memory Profiler, אפשר עכשיו לסנן נתוני פרופילים שאולי מצביעים על דליפות זיכרון במופעים של Activity ושל Fragment באפליקציה.

סוגי הנתונים שמוצגים במסנן כוללים את הנתונים הבאים:

  • מופעי Activity שהושמדו אבל עדיין יש הפניה אליהם.
  • Fragment מקרים שבהם אין FragmentManager תקין, אבל עדיין יש הפניה אליו.

במצבים מסוימים, כמו אלה שמופיעים בהמשך, יכול להיות שהמסנן יחזיר תוצאות חיוביות שגויות:

  • נוצר Fragment אבל עדיין לא נעשה בו שימוש.
  • מתבצעת שמירה במטמון של Fragment, אבל לא כחלק מFragmentTransaction.

כדי להשתמש בתכונה הזו, קודם צריך ליצור dump של ה-heap או לייבא קובץ dump של ה-heap ל-Android Studio. כדי להציג את הפעילויות והקטעים שעשויים לגרום לדליפת זיכרון, מסמנים את תיבת הסימון Activity/Fragment Leaks בחלונית heap dump של הכלי Memory Profiler.

כלי לניתוח ביצועים (profiler): זיהוי דליפת זיכרון

סינון של dump ערימה כדי למצוא דליפות זיכרון.

אמולטורים

‫Android Studio 3.6 עוזר לכם לנצל את היתרונות של כמה עדכונים שכלולים ב-Android Emulator מגרסה 29.2.7 ואילך, כמו שמתואר בהמשך.

תמיכה משופרת במיקום

גרסה 29.2.7 ואילך של Android Emulator מספקת תמיכה נוספת בהדמיה של קואורדינטות GPS ומידע על מסלולים. כשפותחים את האפשרות Emulators (אמולטורים) Extended controls (אמצעי בקרה מתקדמים), האפשרויות בכרטיסייה Location (מיקום) מאורגנות עכשיו בשתי כרטיסיות: Single points (נקודות בודדות) ו-Routes (מסלולים).

נקודות בודדות

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

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

כרטיסייה אחת של נקודות ב'אמצעי בקרה מורחבים' של האמולטור..

מסלולים

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

  1. בתצוגת המפה, משתמשים בשדה הטקסט כדי לחפש את היעד הראשון במסלול.
  2. בוחרים את המיקום מתוצאות החיפוש.
  3. לוחצים על הלחצן ניווט.
  4. בוחרים במפה את נקודת ההתחלה של המסלול.
  5. (אופציונלי) לוחצים על הוספת יעד כדי להוסיף עוד עצירות למסלול.
  6. כדי לשמור את המסלול, לוחצים על שמירת המסלול בתצוגת המפה.
  7. מזינים שם למסלול ולוחצים על שמירה.

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

הכרטיסייה 'מסלולים' בכלי 'אמצעי בקרה מתקדמים' של האמולטור..

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

תמיכה בתצוגה מרובת מסכים

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

  1. פותחים את אמצעי בקרה מתקדמים ועוברים לכרטיסייה תצוגות.

  2. כדי להוסיף עוד מסך, לוחצים על הוספת מסך משני.

  3. בתפריט הנפתח שמתחת למסכים משניים, מבצעים אחת מהפעולות הבאות:

  4. בחירה של אחד מיחסי הגובה-רוחב המוגדרים מראש

  5. בוחרים באפשרות בהתאמה אישית ומגדירים את הגובה, הרוחב וה-DPI של המסך המותאם אישית.

  6. (אופציונלי) לוחצים על הוספת מסך משני כדי להוסיף מסך שלישי.

  7. לוחצים על החלת שינויים כדי להוסיף את המסכים שצוינו למכשיר הווירטואלי הפועל.

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

מכשירים וירטואליים חדשים ותבניות פרויקט ל-Android Automotive OS

כשיוצרים פרויקט חדש באמצעות Android Studio, אפשר לבחור מתוך שלוש תבניות בכרטיסייה Automotive באשף Create New Project: ‏ No Activity,‏ Media service ו-Messaging service. בפרויקטים קיימים, אפשר להוסיף תמיכה במכשירי Android Automotive על ידי בחירה באפשרות File > New > New Module (קובץ > חדש > מודול חדש) מסרגל התפריטים, ובחירה באפשרות Automotive Module (מודול לרכב). אשף Create New Module (יצירת מודול חדש) ידריך אתכם בתהליך יצירת מודול חדש באמצעות אחת מהתבניות של פרויקט Android Automotive.

בחירת תבנית פרויקט של Android Automotive..

בנוסף, עכשיו אפשר ליצור מכשיר וירטואלי של Android‏ (AVD) למכשירי Android Automotive OS על ידי בחירה באחת מהאפשרויות הבאות בכרטיסייה Automotive באשף Virtual Device Configuration.

  1. Polestar 2: יוצרים מכשיר AVD שמדמה את יחידת הראש של Polestar 2.
  2. Automotive (לרוחב, 1024p): יוצרים AVD ליחידות ראש גנריות של Android Automotive בגודל 1024‎ x 768 פיקסלים.

בחירה של מכשיר וירטואלי של Android Automotive..

הורדות SDK שניתן להמשיך

כשמורידים רכיבים וכלים של SDK באמצעות SDK Manager, ‏ Android Studio מאפשרת עכשיו להמשיך הורדות שהופסקו (לדוגמה, בגלל בעיה ברשת) במקום להפעיל מחדש את ההורדה מההתחלה. השיפור הזה שימושי במיוחד להורדות גדולות, כמו Android Emulator או תמונות מערכת, כשחיבור האינטרנט לא אמין.

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

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

משימת הורדה ברקע בסרגל הסטטוס עם פקדים חדשים שמאפשרים להשהות או להמשיך את ההורדה.

הוצאה משימוש של Win32

גרסת 32 הביט של Android Studio ל-Windows לא תקבל יותר עדכונים אחרי דצמבר 2019, ולא תקבל יותר תמיכה אחרי דצמבר 2020. אתם יכולים להמשיך להשתמש ב-Android Studio. עם זאת, כדי לקבל עדכונים נוספים, צריך לשדרג את תחנת העבודה לגרסת 64 ביט של Windows.

מידע נוסף על הוצאה משימוש של Windows 32-bit

אפשרות חדשה לאופטימיזציה של זמן הסנכרון של Gradle

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

כדי לשפר את הביצועים של סנכרון Gradle, עוברים אל File > Settings > Experimental ובוחרים באפשרות Do not build Gradle task list during Gradle sync.

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

מיקום חדש להחלפת מצב האופליין של Gradle

כדי להפעיל או להשבית את מצב האופליין של Gradle, קודם בוחרים באפשרות View > Tool Windows > Gradle (תצוגה > חלונות כלים > Gradle) בסרגל התפריטים. לאחר מכן, בחלק העליון של חלון Gradle, לוחצים על החלפת מצב לא מקוון כפתור Gradle offline בחלונית Gradle..

‫IntelliJ IDEA 2019.2

סביבת הפיתוח המשולבת (IDE) של Android Studio עודכנה עם שיפורים מ-IntelliJ IDEA באמצעות גרסה 2019.2.

מידע נוסף על השיפורים מגרסאות אחרות של IntelliJ שכלולים באופן מצטבר בגרסה 2019.2 זמין בדפים הבאים:

תורמי תוכן לקהילה

תודה לכל חברי הקהילה שעזרו לנו לגלות באגים ודרכים אחרות לשפר את Android Studio 3.6. בפרט, אנחנו רוצים להודות לאנשים הבאים שדיווחו על באגים:

  • Albert Lo
  • Alexey Rott
  • אנדראה לגנזה
  • Benedikt Kolb
  • César Puerta
  • Curtis Kroetsch
  • Damian Wieczorek
  • Dan Lew
  • David Burström
  • Deepanshu
  • Egor Andreevici
  • Eli Graber
  • Emin Kokalari
  • Evan Tatarka
  • פרנטישק נאגי
  • Greg Moens
  • Hannes Achleitner
  • Hans Petter Eide
  • Henning Bunk
  • Hugo Visser
  • Igor Escodro
  • Iñaki Villar
  • Javentira Lienata
  • Joe Rogers
  • Kristoffer Danielsson
  • Liran Barsisa
  • Louis CAD
  • Lóránt Pintér
  • Łukasz Wasylkowski
  • לוק פילקה
  • Malvin Sutanto
  • Masatoshi Kubode
  • מתיו וינטרס
  • Michael Bailey
  • מיכל גורני
  • Mihai Neacsu
  • Mike Scamell
  • Monte Creasor
  • Nelson Osacky
  • Nelson Osacky
  • Nick Firmani
  • ניקלאס אנסמן גירץ
  • Niclas Kron
  • ניקולאס ליכטמאייר
  • Niek Haarman
  • Niels van Hove
  • Niklas Baudy
  • Renato Goncalves
  • Roar Grønmo
  • רוסלן ברטוב
  • Sinan Kozak
  • Slawomir Czerwinski
  • Stefan Wolf
  • Stephen D'Amico
  • Tao Wang
  • Tomas Chladek
  • Tomáš Procházka
  • Tony Robalik
  • Torbjørn Sørli
  • וורן הוא
  • Yenchi Lin
  • Zac Sweers