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. תוכלו להשתמש בתכונה הזו כדי לחסוך מקום במסך, לנווט במהירות בין הסימולטור לבין חלון העריכה באמצעות מקשי קיצור, ולנהל את תהליך העבודה שלכם בסביבת הפיתוח המשולבת (IDE) ובסימולטור בחלון אפליקציה אחד.

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

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

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

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

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

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

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

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

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

  1. בתפריט 'קובץ', פותחים את תיבת הדו-שיח לייבוא מודל TensorFlow Lite בתפריט קובץ > חדש > אחר > TensorFlow Lite Model.
  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.

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

כלי לניתוח נתוני זיכרון נייטיב

כלי הניתוח של זיכרון ב-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).

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

בעזרת הפרופילרים העצמאיים החדשים, עכשיו אפשר ליצור פרופיל של האפליקציה בלי להריץ את סביבת הפיתוח המשולבת (IDE) המלאה של 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

סביבת הפיתוח המשולבת ליבה של Android Studio עודכנה ועכשיו היא כוללת שיפורים מ-IntelliJ IDEA בגרסה 2020.1, כולל חלון Commit חדש שמאפשר פעולות לניהול גרסאות ומצב זן חדש שאפשר להחליף מצב על ידי בחירה באפשרות תצוגה > מראה > כניסה למצב ללא הסחות דעת.

למידע נוסף על השיפורים בגרסה 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 (החלת שינויים בקוד)הסמל &#39;החלת השינויים בקוד&#39; או Apply Changes and Restart Activity (החלת שינויים והפעלה מחדש של הפעילות)סמל החלת השינויים והפעלה מחדש של הפעילות מתבצעות עכשיו מהר יותר באופן משמעותי.

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

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

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