Android Studio 3.1 (מרץ 2018)

Android Studio 3.1.0 היא גרסה ראשית שכוללת מגוון של ותכונות ושיפורים.

3.1.4 (אוגוסט 2018)

העדכון הזה ב-Android Studio 3.1 כולל את השינויים והתיקונים הבאים:

  • חבילת Kotlin עם חבילה היא עכשיו 1.2.50.
  • פרויקטים חדשים נוצרים עם kotlin-stdlib-jdk* artifacts, במקום באמצעות kotlin-stdlib-jre* פריטי מידע שנוצרו בתהליך הפיתוח (Artifact), הוצא משימוש.
  • בוצע שיפור בניתוח R8 של כללי ProGuard.
  • הבאגים הבאים תוקנו:
    • הניסיון להפעיל את המחלקה הראשית של Kotlin נכשל עם שגיאה: "Error: Could not find or load main class..."
    • R8 נכנס ללולאה אינסופית בזמן שביצע אופטימיזציות מסוימות.
    • שימוש בפקודה הרצה מחדש של בדיקות שנכשלו בחלון Run לפעמים החזירו בטעות את ההודעה "לא נמצאו בדיקות".
    • D8 לא טיפל בצורה נכונה ב-invoke-virtual מכונות, גורמת לקריסה עם VerifyError: invoke-super/virtual can't be used on private method
    • המהדר של Data Binding התבסס על גרסה ישנה של com.android.tools:annotations עכשיו המהדר משתמש הערות של כלים מהפרויקט הבסיסי כאשר הן זמינות.
    • Android Studio קרס במהלך העברת מקטעים במהלך השימוש של פרופילי אנשים.
    • הכלי לניפוי באגים קרס במהלך ניפוי באגים בפריסה באמצעות תיבת טקסט.
    • D8 לא הצליחה לקרוא חלק מקובצי ZIP עם תווים מיוחדים.

3.1.3 (יוני 2018)

העדכון הזה ל-Android Studio 3.1 כולל תיקונים לבאגים הבאים:

  • דליפות זיכרון גרמו ל-Android Studio להיות איטיים ולא להגיב אחרי שהשתמשתם בעורך הפריסה. העדכון הזה כולל תיקונים לרוב הבעיות האלה. אנחנו מתכוונים לפרסם עדכון נוסף בקרוב לטפל בדליפות זיכרון נוספות.
  • אפליקציות מסוימות שפותחו באמצעות D8 קרסו בחלק מהטאבלטים של Verizon Ellipsis.
  • התקנת אפליקציות שפותחו באמצעות D8 נכשלה עם שגיאה אחת (INSTALL_FAILED_DEXOPT) במכשירים עם Android 5.0 או 5.1 (רמת API 21 או 22).
  • חלק מהאפליקציות שהשתמשו בספריית OkHttp ונבנה באמצעות D8 קרסה במכשירים שמותקנת בהם גרסת Android 4.4 (רמת API 19).
  • לפעמים ההפעלה של Android Studio נכשלה, עם ProcessCanceledException במהלך אתחול הכיתה עבור com.intellij.psi.jsp.JspElementType.

3.1.2 (אפריל 2018)

העדכון הזה ל-Android Studio 3.1 כולל תיקונים לבאגים הבאים:

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

    "The SourceSet name is not recognized by the Android Gradle Plugin."

  • כאשר התכונה 'הפעלה מיידית' הופעלה, גרסאות build של פרויקטים חדשים ב-Kotlin נכשלו מופעלת על ידי הפקודה Run.
  • במהלך העריכה של קובץ build.gradle, היו לפעמים מקרים עיכוב ניכר בין הקלדת תו לבין הופעת התו שמופיע במסך.
  • בחלק מהפרויקטים עם פרויקטים גדולים, אירעו כשלים בבנייה במהלך הסרת המשאבים מספרי מודולים או יחסי תלות חיצוניים, עם השגיאה הבאה message:

    "RejectedExecutionException: Thread limit exceeded replacing blocked worker"

  • החישוב של רשימת ה-DEX הראשית D8 לא הביא בחשבון הפעלות חוזרות.

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

3.1.1 (אפריל 2018)

העדכון הזה ל-Android Studio 3.1 כולל תיקונים לבאגים הבאים:

  • במקרים מסוימים, כשפרויקט שנוצר ב-Android Studio 3.0 נפתח בפעם הראשונה ב-Android Studio 3.1, המשימה 'יצירת מודעות באמצעות Gradle' הוסר מהאזור לפני ההפעלה בקטע הפעלה/ניפוי באגים הגדרות אישיות כתוצאה מכך, לא נבנו פרויקטים המשתמש לחץ על הלחצן Run או Debug, וזה גרם למערכת כשלים כגון פריסה של חבילות APK שגויות וקריסות בעת השימוש הפעלה מיידית.

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

  • הכלי לניפוי באגים קרס במהלך ניפוי באגים בפריסה באמצעות תיבת טקסט, אם מדובר במצב מתקדם הפרופיילינג הופעל.
  • מערכת Android Studio הוקפאה אחרי שלחצתם על יצירת וריאנטים.
  • קובצי AAR (ארכיון Android) חולצו פעמיים, פעם אחת במהלך Gradle בסנכרון ופעם אחת גם בתהליך ה-build של Gradle.
  • רכיבים חסרים בחלק מפריטי וקטורים שניתנים להזזה שיובאו מקובצי SVG.
  • האזהרה לגבי ההוצאה משימוש של compile עודכנה הגדרת יחסי התלות עם הנחיות טובות יותר לגבי ההגדרות של implementation ו-api. עבור פרטים על הפסקת השימוש ב-compile של ההגדרות האישיות, אפשר לעיין תיעוד להגדרות התלות החדשות.

תכנות/IDE

IntelliJ 2017.3.3

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

פרטים נוספים מופיעים בנתוני הגרסה של JetBrains לגרסאות של IntelliJ IDEA 2017.2 וכן 2017.3, כפי וגם את נתוני הגרסה של JetBrains עדכונים לתיקון באגים.

שיפורים בעריכת SQL בעזרת חדר

כשמשתמשים ב ספריית מסד הנתונים של Room, אפשר לנצל את היתרונות של עריכת SQL:

  • השלמת קוד בתוך Query מבין טבלאות (ישויות), עמודות, פרמטרים של שאילתה, כינויים שאילתות איחוד (join), שאילתות משנה וסעיפים WITH (עם).
  • עכשיו אפשר להדגיש תחביר SQL.
  • אפשר ללחוץ לחיצה ימנית על שם של טבלה ב-SQL ולשנות את השם שלו, וגם משכתב את קוד Java או Kotlin המתאים (כולל, לדוגמה, סוג המוחזר של השאילתה). במקרה של שינוי שם, הוא פועל בכיוון ההפוך, גם אם משנים שם של מחלקה או שדה ב-Java, המערכת משכתבת את ה-SQL
  • שימושים ב-SQL מוצגים כשמשתמשים בחיפוש שימושים (לוחצים לחיצה ימנית בוחרים באפשרות חיפוש שימושים בתפריט ההקשר).
  • כדי לעבור להצהרה של ישות SQL בקוד Java או Kotlin, אפשר להחזיק את המקש Control (פקודה Command ב-Mac) בזמן הלחיצה על הישות.

למידע על שימוש ב-SQL עם Room, אפשר לעיין במאמר בנושא שמירת נתונים בקובץ מסד נתונים באמצעות Room.

עדכונים בנתונים קישור

העדכון הזה כולל כמה שיפורים עבור קישור נתונים:

  • עכשיו אפשר להשתמש LiveData כשדה ניתן למדידה בביטויים של קישור נתונים. ViewDataBinding הכיתה כוללת עכשיו שיטת setLifecycle() חדשה, שמשמשת אותך לצפייה LiveData אובייקטים.

  • ObservableField הכיתה יכולה לקבל עכשיו Observable של האובייקטים בהרכב שלו.

  • אפשר לראות תצוגה מקדימה של מהדר מצטבר חדש לקישור הנתונים הסוגים. לפרטים על המהדר החדש והוראות הפעלה אפשר לראות Data Binding Compiler V2.

    היתרונות של המהדר החדש כוללים את אלה:

    • ViewBinding כיתות נוצרות על ידי Android פלאגין ל-Gradle לפני מהדר (compiler) Java.
    • הספריות שומרות את סיווגי הקישור שנוצרו על ידי האפליקציה כשהאפליקציה במקום ליצור אותם מחדש בכל פעם. מי יכול משפרות משמעותית את הביצועים בפרויקטים עם מודולים מרובים.

מהדר וגרידל

D8 הוא ה-DEX ברירת המחדל מהדר

מהדר D8 משמש עכשיו כברירת מחדל ליצירת בייטקוד DEX.

המהדר החדש הזה של DEX מגיע עם כמה יתרונות, הבאים:

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

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

אם מגדירים את android.enableD8 לערך false ב gradle.properties, צריך למחוק את הדגל או להגדיר אותו בתור true:

        android.enableD8=true
      

פרטים נוספים זמינים במאמר מהדר (compiler) חדש ב-DEX.

מצטבר תהליך הסרה של סוכרים

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

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

אפשר להשבית הסרה מצטברת על ידי ציון הערכים הבאים ב: קובץ gradle.properties של הפרויקט:

        android.enableIncrementalDesugaring=false
      

חלון פלט פשוט יותר

Gradle Console הוחלף ב-Build חלון עם הכרטיסיות סנכרון ו-Build.

לפרטים על השימוש בחלון Build החדש והפשוט: ראהמעקב אחר ה-build .

עדכונים והוספה לאינדקס בכמות גדולה בו-זמניות

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

C++ ו-LLDB

ביצענו שיפורים רבים באיכות ובביצועים בתכנות, בסנכרון שלבי פיתוח וניפוי באגים בפיתוח C++. השיפורים כוללים הבאים:

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

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

  • הוספה של כלים לעיצוב (מדפסות יפות) למבני נתונים נוספים של C++ מאפשרת לקרוא פלט LLDB קל יותר.

  • LLDB פועל עכשיו רק עם Android 4.1 (רמת API 16) גבוהה יותר.

הערה: ניפוי באגים נייטיב ב-Android Studio 3.0 או גדול יותר לא פועל ב-Windows בגרסת 32 סיביות. אם אתם משתמשים ב-Windows בגרסת 32 סיביות לנפות באגים בקוד הנייטיב, צריך להשתמש ב-Android Studio 2.3.

Kotlin

Kotlin שודרגו לגרסה 1.2.30

Android Studio 3.1 כולל קוטלין גרסה 1.2.30.

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

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

לכל פרויקט שאתם רוצים להפעיל עליו איתור שגיאות בקוד, ה-Maven של Google המאגר חייב להיות כלול ב-build.gradle ברמה העליונה חדש. המאגר של Maven כבר כלול בפרויקטים שנוצרו ב- Android Studio 3.0 ואילך.

כלים לשיפור הביצועים

דגימה של תהליכי C++ מקוריים באמצעות הכלי לניתוח ביצועי ה-CPU

הכלי CPU Profiler הדוח כולל הגדרת ברירת מחדל לתיעוד מעקבים של דגימות נתונים של האפליקציה של שרשורים מותאמים. כדי להשתמש בהגדרות האלה אפשר לפרוס את האפליקציה מכשיר שמותקנת בו מערכת Android בגרסה 8.0 (רמת API 26) ואילך ולאחר מכן בוחר נדגם (Native) מההקלטה של ה-CPU Profiler התפריט הנפתח 'הגדרות אישיות'. לאחר מכן, להקליט וגם בודקים מעקב כרגיל.

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

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

סינון של מעקבי מעבד (CPU), זיכרון תוצאות הקצאה ועותקים של תמונת מצב של הזיכרון

הכלי CPU Profiler הכללה של הכלי לפרופיל הזיכרון תכונת חיפוש שמאפשרת לסנן תוצאות מהקלטת שיטה מעקב, הקצאות זיכרון או תמונת מצב של הזיכרון.

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

טיפ: אפשר לפתוח את שדה החיפוש גם על ידי הקשה על Control + F (Command + F ב-Mac).

בכרטיסייה Flame Chart של ה-CPU Profiler, מחסניות קריאות שכוללות שיטות שקשורות לשאילתת החיפוש מודגשות ועוברות לימין של התרשים.

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

הכרטיסייה 'בקשות' ב-Network Profiler

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

תצוגת Thread בכלי לניתוח הרשת

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

  • Connection View (תצוגת חיבור): מספקת את אותו מידע כמו הגרסאות הקודמות של Android Studio - רשימה של קבצים שנשלחו או התקבלו במהלך חלק נבחר של ציר הזמן בכל ה-threads של המעבד (CPU) של האפליקציה שלך. עבור בכל בקשה, אפשר לבדוק את הגודל, הסוג, הסטטוס ומשך השידור.
  • תצוגת שרשור: מציגה את הפעילות ברשת של כל אחד משרשורי המעבד (CPU) של האפליקציה. התצוגה הזו מאפשרת לבדוק אילו מהשרשורים של האפליקציה אחראים לכל בקשת רשת.

הכלי לבדיקת פריסות

נוספו לסוקר הפריסה כולל פונקציונליות מסוימת שסופקו בעבר על ידי הכלים 'מציג ההיררכיה' ו-Pixel Perfect:

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

עורך פריסות

Palette ב- עורך פריסות קיבלה הרבה שיפורים:

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

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

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

הפעלה והרצה מיידית

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

כשמטרגטים מכשיר עם Android מגרסה 8.0 (רמת API 26) ואילך, הפעלה מיידית יכולה לפרוס שינויים במשאבים מבלי לגרום להפעלה מחדש של האפליקציה. הדבר אפשרית כי המשאבים נמצאים ב-APK מפוצל.

מכשיר הדמיה

קבלת פרטים על מה חדש והשתנה באמולטור מאז Android ב-Studio 3.0, אפשר לעיין בנתוני הגרסה של Android Emulator גרסה 27.0.2 עד גרסה 27.1.12.

השיפורים העיקריים כוללים את השיפורים הבאים:

  • תמונות מצב של ההפעלה המהירה לשמירת מצב האמולטור והפעלה מהירה יותר, עם היכולת להשתמש בפקודה Save now כדי לשמור מצב התחלה מותאם אישית.
  • מסך אמולטור ללא חלון.
  • תמונות מערכת ל-Android 8.0 (רמת API 26), ל-Android 8.1 (רמת API) 27), ותצוגה מקדימה למפתחים של Android P.

ממשק משתמש וחוויית משתמש שיפורים

עוד הסברים קצרים, מקשי קיצור והודעות מועילות

הוספנו הסברים קצרים ושכבות-על מועילות על הודעות במקומות רבים וב-Android Studio.

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

כלים > תפריט Android הוסר

בתפריט כלים > תפריט Android הוסר. פקודות הועברו בעבר לתפריט הזה.

  • פקודות רבות הועברו ישירות לתפריט כלים תפריט
  • הפקודה Sync project with gradle files הועברה אל בתפריט קובץ.
  • הפקודה Device Monitor הוסרה שמתואר בהמשך.

מוניטור המכשיר זמין משורת הפקודה

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

לצפייה מסמכי התיעוד של Device Monitor עבור הוראות להפעלת Device Monitor משורת הפקודה פרטים על הכלים שזמינים דרך Device Monitor.