‫Android Studio 4.2 (אפריל 2021)

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

4.2.2 (יוני 2021)

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

4.2.1 (מאי 2021)

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

Android Gradle plugin 4.2.0

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

שינויים בתאימות ובאופן ההגדרה של Gradle

כשמריצים ב-Android Studio, כלי ה-build של Gradle משתמש ב-JDK שכלול ב-Studio. בגרסאות קודמות, JDK 8 נכלל ב-Studio. לעומת זאת, בגרסה 4.2, ‏ JDK 11 כלול בחבילה. כשמשתמשים ב-JDK החדש שצורף כדי להריץ את Gradle, יכול להיות שיהיו בעיות תאימות או השפעה על הביצועים של JVM בגלל שינויים ב-garbage collector. הבעיות האלה מתוארות בהערות לגבי הגרסה של AGP.

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

כדי לשפר את הביצועים של סנכרון Gradle, ‏ Android Studio מדלג על יצירת רשימת המשימות במהלך הסנכרון. כך תהליך הסנכרון של Gradle יושלם מהר יותר, והרספונסיביות של ממשק המשתמש תשתפר בפרויקטים גדולים מאוד. האפשרות הזו מופעלת כברירת מחדל ב-Android Studio 4.2. כדי להשבית את האפשרות הזו, עוברים אל File > Settings > Experimental (Preferences > Experimental ב-Mac) ומבטלים את הסימון של Do not build Gradle task list during Gradle sync.

הכלי לבדיקת מסדי נתונים

שיפורים בעורך השאילתות

כלי הבדיקה של מסד הנתונים כולל כמה שיפורים שיעזרו לכם לכתוב ולהריץ הצהרות SQL מותאמות אישית. כשפותחים את כלי הבדיקה ופותחים כרטיסייה של New query (שאילתה חדשה), אמור להופיע אזור עריכה גדול יותר שאפשר לשנות את הגודל שלו, שבו אפשר לכתוב ולעצב את השאילתות, כמו שמוצג בהמשך.

עורך הכלי לבדיקת מסדי נתונים

בנוסף, אנחנו מספקים עכשיו היסטוריה של השאילתות הקודמות שלכם. כשלוחצים על הלחצן הצגת היסטוריית השאילתות כפתור להצגת היסטוריית השאילתות{: .inline-icon} אמורה להופיע רשימה של שאילתות שהרצתם בעבר על מסד הנתונים שנבחר כרגע. לוחצים על שאילתה ברשימה כדי לראות תצוגה מקדימה של השאילתה המלאה בעורך, ומקישים על Enter כדי להעתיק אותה לעורך. לאחר מכן, לוחצים על Run כדי להריץ את ההצהרה.

הרצת פקודה בעורך השאילתות

מצב אופליין

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

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

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

כלי השדרוג של Assistant ל-AGP

תוסף חדש של Gradle ל-Android בשם Upgrade Assistant (עוזר שדרוג) יכול לעזור לכם לעדכן את גרסת AGP של הפרויקט.

תיבת הדו-שיח של Android Gradle Plugin Upgrade Assistant

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

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

System Trace: מדדים משופרים לזיכרון ולגרפיקה

בכלי ליצירת תמונת מצב של מעבד (CPU), התכונה System Trace כוללת עכשיו מדדים חדשים לניתוח ביצועי האפליקציה, והיא כוללת את המדדים הבאים:

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

  • BufferQueue. בקטע Display (תצוגה), הטראק החדש הזה מציג את מספר המאגרים של השטח של האפליקציה BufferQueue (0,‏ 1 או 2) כדי לעזור לכם להבין את המצב של מאגרי התמונות כשהם עוברים בין רכיבי הגרפיקה של Android.

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

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

    תדירות המעבד (CPU) של איסוף עקבות המערכת

  • זיכרון התהליך (RSS). בחלון החדש מוצגת כמות הזיכרון הפיזי שהאפליקציה משתמשת בו כרגע.

    זיכרון תהליך של עקבות המערכת (RSS)

פרטים נוספים זמינים במאמר בנושא בדיקת פעילות המעבד באמצעות CPU Profiler.

פעולת רענון חדשה בכלי לבדיקת פריסות

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

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

תמיכה ב-Safe Args

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

  • השלמה אוטומטית של Directions,‏ Args ושל מחלקות שונות של כלי הבנייה
  • תמיכה בתוספים של Java ו-Kotlin safe args
  • ניווט מהמקור אל ה-XML

הכלי R8 retrace זמין עכשיו בכלי שורת הפקודה

הכלי R8 retrace, שזמין בגרסה 4.0 של כלי שורת הפקודה, הוא כלי עצמאי להשגת מעקב המחסנית המקורי ממעקב מחסנית שעבר הסתרה.

אפשר להוריד את החבילה הזו באמצעות SDK Manager, שמתקין את R8 retrace ב-android_sdk/cmdline-tools. אפשרות נוספת היא להוריד את חבילת כלי שורת הפקודה העצמאיים.

מידע על השימוש מופיע במאמר R8 retrace במדריך למשתמש.

פריסה למספר מכשירים

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

  1. בתפריט הנפתח של מכשיר היעד (במרכז העליון של סביבת הפיתוח המשולבת), בוחרים באפשרות בחירת כמה מכשירים.

    התפריט הנפתח 'מכשיר יעד'

  2. בוחרים את מכשירי היעד ולוחצים על אישור.

    שינוי תיבת הדו-שיח של קבוצת המכשירים

  3. מריצים את האפליקציה.

הגדרה חדשה removable למודולים של תכונות

ב-Android Gradle plugin 4.2 נעשה שימוש ב-bundletool 1.0.0, שכולל שינוי בהתנהגות של אפליקציות שמשתמשות במודולים של תכונות: כל מודול של תכונה שצוין כ-dist:install-time ושלא סומן במפורש כ-dist:removable יהפוך ללא ניתן להסרה כברירת מחדל. ההגדרה החדשה הזו מבצעת אופטימיזציה של שילוב מודולים בזמן ההתקנה עם מודול הבסיס, ויכולה לשפר את ביצועי האפליקציה בחלק מהאפליקציות.

כדי להשאיר את מודולי התכונות ניתנים להסרה, מגדירים את dist:removable="true" בכל מודול שרוצים להסיר.

מידע נוסף על ההגדרה החדשה הזו זמין במאמר בנושא תג dist:removable במסמכי התיעוד בנושא מניפסט של מודול תכונות.

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

כדי לעזור לכם להיות פרודוקטיביים יותר כשאתם מבצעים איטרציות באפליקציה, הוספנו את השיפורים הבאים לתכונה 'החלת שינויים' במכשירים עם Android 11 ואילך:

תמיכה בשינויים נוספים בקוד

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

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

עדכון של האשפים 'פרויקט חדש' ו'מודול חדש'

האשפים New Project (פרויקט חדש) ו-New Module (מודול חדש) עודכנו כדי להקל על העיון בתבנית, על הבחירה שלה ועל הזנת מידע על הפרויקט או המודול החדשים.

האפשרות Import .JAR/.AAR Package (ייבוא חבילת JAR או AAR) מאשף New Module (מודול חדש) הוסרה גם היא. כדי לייבא קובץ JAR או AAR לפרויקט, צריך להשתמש בתיבת הדו-שיח Project Structure.

‫Kotlin 1.4.31

‫Android Studio 4.2 כולל את Kotlin 1.4.31. כדאי לעיין ביומן השינויים של Kotlin 1.4.0 כדי לראות את השינויים העיקריים.

משתנה הסביבה ANDROID_SDK_HOME הוצא משימוש

משתנה הסביבה ANDROID_SDK_HOME הוצא משימוש והוחלף ב-ANDROID_PREFS_ROOT. מידע נוסף זמין במאמר בנושא משתני סביבה של אמולטור.

בעיות ידועות ב-Android Studio 4.2

בקטע הזה מתוארות בעיות מוכרות שקיימות ב-Android Studio 4.2. הרשימה המלאה מופיעה בדף בעיות מוכרות.

‫Android Studio 4.2.0 יוצר פרויקטים עם גרסה שגויה של Kotlin:‏ ‎1.5.0-release-764

אם אתם משתמשים ב-Android Studio 4.2.0 ושדרגתם לפלאגין Kotlin 1.5.0, פרויקטים חדשים של Kotlin שנוצרו על ידי Studio לא יצליחו לעבור build בגלל שגיאת הסנכרון הבאה של Gradle:

Could not find org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.0-release-764.

כפתרון זמני, מחליפים את 1.5.0-release-764 ב-1.5.0 בקובצי build.gradle הפרויקט.

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

החל מגרסה 4.2, ‏ Android Studio פועל ב-JDK 11. העדכון הזה גורם לשינוי בהתנהגות הבסיסית שקשורה למפתחות חתימה.

כשמנווטים אל Build > Generate Signed Bundle / APK ומנסים להגדיר חתימת אפליקציה עבור App Bundle או APK, הזנה של סיסמאות שונות למפתח ולמאגר המפתחות עלולה להוביל לשגיאה הבאה:

Key was created with errors:
Warning: Different store and Key passwords not supported for PKCS12 Key stores

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

‫Android Studio לא מופעל אחרי התקנת גרסה 4.2

‫Studio מנסה לייבא קובצי .vmoptions קודמים ולנקות אותם כדי שיוכלו לפעול עם איסוף האשפה שמשמש את JDK 11. אם התהליך הזה נכשל, יכול להיות שסביבת הפיתוח המשולבת לא תופעל אצל משתמשים מסוימים שהגדירו אפשרויות מותאמות אישית של מכונה וירטואלית בקובץ .vmoptions.

כדי לעקוף את הבעיה הזו, מומלץ להוסיף הערות לאפשרויות מותאמות אישית בקובץ .vmoptions (באמצעות התו #). אפשר למצוא את הקובץ .vmoptions במיקומים הבאים:

Windows

C:\Users\YourUserName\AppData\<var>[Local|Roaming]</var>\Google\AndroidStudio4.2\studio64.exe.vmoptions

macOS

~/Library/Application Support/Google/AndroidStudio4.2/studio.vmoptions

Linux

~/.config/Google/AndroidStudio4.2/studio64.vmoptions

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