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

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

‫4.2.2 (יוני 2021)

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

‫4.2.1 (מאי 2021)

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

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

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

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

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

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

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

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

מצב אופליין

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

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

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

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

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

תיבת הדו-שיח של כלי השדרוג של פלאגין של Android Gradle

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

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

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

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

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

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

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

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

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

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

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

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

פעולת רענון חדשה ב-Layout Inspector

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

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

תמיכה ב-Safe Args

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

  • השלמה אוטומטית של Directions,‏ Args ושל מחלקות שונות של Builder
  • תמיכה בתוספים של 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 בגרסה 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 מאשף 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 ומנסים להגדיר חתימת אפליקציה עבור קובץ AAB או 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 לא מופעל אחרי שדרוג שבהמשך.