Android Studio 4.1 (אוגוסט 2020)

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

4.1.3 (מרץ 2021)

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

4.1.2 (ינואר 2021)

<p>
  This minor update includes various bug fixes.
  To see a list of notable bug fixes, read the related post on the
  <a href="https://androidstudio.googleblog.com/2021/01/android-studio-412-available.html">
    Release Updates blog</a>.
</p>
<p><b>4.1.1 (November 2020)</b></p>

<p>
  This minor update includes various bug fixes.
  To see a list of notable bug fixes, read the related post on the
  <a href="https://androidstudio.googleblog.com/2020/11/android-studio-411-available.html">
    Release Updates blog</a>.
</p>

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

בעזרת Database Inspector החדש, אפשר לבדוק את מסדי הנתונים באפליקציה שפועלת, להריץ שאילתות ולשנות אותם. כדי להתחיל, פורסים את האפליקציה במכשיר עם API ברמה 26 ואילך, ובוחרים באפשרות View > Tool Windows > Database Inspector בסרגל התפריטים.

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

הפעלת Android Emulator ישירות ב-Android Studio

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

האמולטור מופעל בחלון כלים ב-Android Studio.

למידע נוסף, קראו את מסמכי העזרה של Android Emulator.

שימוש במודלים של TensorFlow Lite

בעזרת ML Model Binding תוכלו לייבא בקלות קובצי מודלים של .tflite ולהשתמש בהם בפרויקטים שלכם. Android Studio יוצר כיתות פשוטות לשימוש, כך שתוכלו להריץ את המודל עם פחות קוד ובטיחות סוגים טובה יותר.

מודלים נתמכים

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

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

ייבוא של קובץ מודל

כדי לייבא קובץ מודל נתמך:

  1. פותחים את תיבת הדו-שיח של ייבוא מודל TensorFlow Lite בתפריט 'קובץ' בקטע קובץ > חדש > אחר > מודל TensorFlow Lite.
  2. בוחרים את קובץ המודל .tflite שהורדתם או יצרתם בעבר.
  3. לוחצים על סיום.

הפקודה מייבאת את קובץ המודל לפרויקט וממקמת אותו בתיקייה ml/. אם הספרייה לא קיימת, Android Studio תיצור אותה בשבילכם.

ייבוא מודל של TensorFlow Lite

הצגת המטא-נתונים והשימוש במודל

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

  • Model: תיאור ברמה גבוהה של המודל
  • Tensors: תיאור של טינסורים של קלט ופלט
  • קוד לדוגמה: דוגמה לאופן שבו יוצרים ממשק עם המודל באפליקציה

דוגמה לשימוש ב-mobilenet_v1_0.25_160_quantized.tflite:

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

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

בעיות ידועות ופתרונות עקיפים

  • התמיכה במודלים של TensorFlow Lite לבעיות בתחומים אחרים מלבד סיווג תמונות והעברת סגנון מוגבלת כרגע. הייבוא אמור לפעול בצורה תקינה, אבל חלק מהקלטים ו/או הפלט של המודלים מיוצגים על ידי TensorBuffers ולא על ידי סוגים ידידותיים. במודלים ללא מטא-נתונים, כל הקלט והפלט של המודל יהיו TensorBuffers.
  • לא ניתן להשתמש במודלים עם סוגי נתונים של קלט ופלט שונים מ-DataType.UINT8 או מ-DataType.FLOAT32.

התכונה הזו עדיין בפיתוח, לכן מומלץ לשלוח משוב או לדווח על באגים.

Native Memory Profiler

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

הקלטה ב-Native Memory Profiler

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

בעיות ידועות ופתרונות עקיפים

הכלי Native Memory Profiler ב-Android Studio 4.1 לא פועל במכשירי Android 11. התמיכה ביצירת פרופילים של מכשירי Android 11 זמינה כרגע בגרסת ה-preview 4.2.

החל מהגרסה הראשונית 4.1, פרופיל ההפעלה של האפליקציה הושבת. האפשרות הזו תופעל בגרסה הקרובה.

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

ממשק המשתמש של System Trace: בחירה קלה יותר, כרטיסיית ניתוח חדשה ונתונים נוספים של עיבוד פריימים

ממשק המשתמש של System Trace בפרופילר של Android Studio כולל את השיפורים הבאים:

  • בחירה באמצעות תיבה: בקטע שרשורים, עכשיו אפשר לגרור את העכבר כדי לבצע בחירה באמצעות תיבה של אזור מלבני, ולבצע זום על האזור הזה בלחיצה על הלחצן Zoom to Selection (הגדלת התצוגה לבחירה) לחצן הזום לבחירה של כלי לניתוחי נתונים בפינה השמאלית העליונה (או להשתמש במקשי הקיצור M). כשגוררים שרשורים דומים ושולפים אותם זה לצד זה, אפשר לבחור כמה שרשורים כדי לבדוק את כולם בבת אחת. לדוגמה, יכול להיות שתרצו לבצע ניתוח בכמה שרשורים של עובדים.

  • כרטיסיית סיכום: בכרטיסייה החדשה סיכום בחלונית ניתוח מוצגים:

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

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

    • נתונים על התפלגות המצבים של השרשור.

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

    כדי לנווט למקרה אחר, בוחרים שורה אחרת בטבלה.

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

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

כלי ניתוח נתונים עצמאיים זמינים עכשיו

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

הוראות לשימוש בפרופילים הנפרדים מפורטות במאמר הפעלת פרופילרים נפרדים.

תמיכה בניווט ב-Dagger

פעולות של שוליים ב-IDE לניווט לצרכנים ולספקים של Dagger

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

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

  • הצומת Find Usages: כשמפעילים את Find Usages בספקי סוג נתון, החלון Find כולל עכשיו צומת Dependency consumer(s) שמציג רשימה של צרכנים מהסוג הזה. לעומת זאת, אם מפעילים את הפעולה הזו על צרכן של יחסי תלות שהוזנו באמצעות Dagger, בחלון Find יוצג הספק של יחסי התלות האלה.

רכיבי Material Design: עיצובים וסגנונות מעודכנים בתבניות פרויקט חדשות

אנימציה: יצירת פרויקט ב-Android Studio עם מאפייני עיצוב חדשים של Material Design.

התבניות של Android Studio בתיבת הדו-שיח Create New Project משתמשות עכשיו ברכיבי Material Design ‏ (MDC) ותואמות להנחיות המעודכנות לגבי עיצובים וסגנונות כברירת מחדל. העדכונים כוללים:

  • MDC: פרויקטים תלויים ב-com.google.android.material:material ב-build.gradle. עיצובי האפליקציה הבסיסיים משתמשים בהורים של Theme.MaterialComponents.* ומבטלים את הגדרות הצבע והמאפיין 'מופעל' המעודכנות של MDC.

  • משאבי צבע: משאבי צבע ב-colors.xml משתמשים בשמות מילוליים (לדוגמה, purple_500 במקום colorPrimary).

  • משאבי עיצוב: משאבי העיצוב נמצאים ב-themes.xml (במקום ב-styles.xml) ומשתמשים בשמות מסוג Theme.<var><var>.

  • עיצוב כהה: עיצובי האפליקציות הבסיסיים משתמשים בהורים של DayNight, והם מחולקים בין res/values ל-res/values-night.

  • מאפייני עיצוב: כדי להימנע משימוש בצבעים שמוגדרים בקוד, משאבים של צבעים מוגדרים כמאפייני עיצוב (למשל, ?attr/colorPrimary) בפריסות ובסגנונות.

IntelliJ IDEA 2020.1

סביבת הפיתוח המשולבת (IDE) של Android Studio עודכנה בשיפורים מ-IntelliJ IDEA עד לגרסה 2020.1, כולל חלון Commit חדש שמאפשר לבצע פעולות של בקרת גרסאות ומצב Zen חדש שאפשר להפעיל ולכבות באמצעות View > Appearance > Enter Distraction Free Mode.

למידע נוסף על השיפורים בגרסה 2020.1, ראו IDEA 2020.1.

שינויים בספריית התצורה של IDE

המיקומים של ספריות התצורה של המשתמשים השתנו למיקומים הבאים:

Windows

תחביר: %APPDATA%\Google&lt;product><version>

דוגמה: C:\Users\YourUserName\AppData\Roaming\Google\AndroidStudio4.1

macOS

תחביר: ~/Library/Application Support/Google/<product><version>

דוגמה: ~/Library/Application Support/Google/AndroidStudio4.1

Linux

תחביר: ~/.config/Google/<product><version>

דוגמה: ~/.config/Google/AndroidStudio4.1

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

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

Kotlin 1.3.72

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

תצוגה מקדימה של תצוגה מותאמת אישית

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

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

הערה: אם השינויים לא מופיעים בתצוגה המקדימה, בוחרים באפשרות Build > Make Project בסרגל התפריטים.

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

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

אם האפליקציה או המשחק שלכם מפותחים באמצעות קוד מקומי, כמו C++, מעכשיו תוכלו להעלות קובצי סמלים לניפוי באגים ל-Play Console לכל גרסה של האפליקציה. מערכת Play Console משתמשת בקובצי הסמלים האלה לניפוי באגים כדי ליצור סמלים של מעקב ה-stack של האפליקציה, וכך קל יותר לנתח קריסות ושגיאות ANR. במאמר תמיכה בקריסה ברמת שפת המכונה מוסבר איך מעלים קבצים של סמלי ניפוי באגים.

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

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

מהירויות פריסה מהירות יותר

השקענו רבות באופטימיזציה של מהירות החזרה על תהליך (iteration) על ידי פיתוח שיטה לפריסה של שינויים במכשיר ושמירתם ללא התקנת האפליקציה. אחרי פריסה ראשונית, פריסות נוספות במכשירי Android 11 באמצעות Apply Code Changes (החלת שינויים בקוד)הסמל של החלת השינויים בקוד או Apply Changes and Restart Activity (החלת שינויים והפעלה מחדש של הפעילות)סמל החלת השינויים והפעלת הפעילות מחדש מהירות יותר באופן משמעותי.

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

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

במכשירים עם Android 11 Developer Preview 3 ואילך, אפשר עכשיו להוסיף שיטות ולאחר מכן לפרוס את השינויים האלה באפליקציה שפועלת. לשם כך, לוחצים על Apply Code Changes (החלת השינויים בקוד) הסמל של החלת השינויים בקוד או על Apply Changes and Restart Activity (החלת השינויים והפעלה מחדש של הפעילות) סמל החלת השינויים והפעלת הפעילות מחדש.