‫Android Studio 2.0 (אפריל 2016)

הערה: אם אתם מפתחים לגרסת N Developer Preview, אתם צריכים להשתמש ב-Android Studio 2.1 Preview. ‫Android Studio 2.0 לא תומך בכל התכונות שנדרשות כדי לטרגט את גרסת N Preview.

הפעלה מיידית:

  • מעכשיו, Android Studio פורס גרסאות build נקיות מהר יותר מאי פעם. בנוסף, העברת שינויים מצטברים בקוד לאמולטור או למכשיר פיזי מתבצעת עכשיו כמעט באופן מיידי. אפשר לבדוק את העדכונים בלי לפרוס מחדש גרסת ניפוי באגים חדשה, ובמקרים רבים גם בלי להפעיל מחדש את האפליקציה.
  • <li>Instant Run supports pushing the following changes to a running app:
      <ul>
        <li>Changes to the implementation of an existing instance method or
        static method
        </li>
        <li>Changes to an existing app resource
        </li>
        <li>Changes to structural code, such as a method signature or a static
        field (requires a target device running API level 21 or higher).
        </li>
      </ul>
    </li>
    
    <li>Read the documentation to learn more <a href=
    "/tools/building/building-studio.html#instant-run">about Instant
    Run</a>.
      <p class="note">
        <strong>Note:</strong> Instant Run is supported only when you deploy the
        debug build variant, use <a href=
        "/tools/revisions/gradle-plugin.html#revisions">Android plugin for
        Gradle version 2.0.0</a> or higher, and configure your app's module-level
        <code>build.gradle</code> file for <code>minSdkVersion 15</code> or higher.
        For the best performance, configure your app for <code>minSdkVersion
        21</code> or higher.
      </p>
    </li>
    

תוספות חדשות ל-Lint:

  • בדיקה של הצהרות switch באמצעות מספרים שלמים עם הערות כדי לוודא שכל הקבועים מטופלים.@IntDef כדי להוסיף במהירות הצהרות חסרות, משתמשים בתפריט הנפתח של פעולת הכוונה ובוחרים באפשרות Add Missing @IntDef Constants (הוספת קבועים חסרים של ‎@IntDef).
  • דגלים לניסיונות שגויים להשתמש באינטרפולציה של מחרוזות כדי להוסיף מספרי גרסאות בקובץ build.gradle.
  • דגלים לכיתות אנונימיות שמרחיבות את המחלקה Fragment.
  • דגלים לקוד Native במיקומים לא בטוחים, כמו התיקיות res/ ו-asset/. הדגל הזה מעודד אחסון של קוד מקורי בתיקייה libs/, שאחר כך נארז בצורה מאובטחת בתיקייה data/app-lib/ של האפליקציה בזמן ההתקנה. AOSP: #169950
  • התרעות על שיחות לא בטוחות ל-Runtime.load() ושיחות ל-System.load(). ‫AOSP: #179980
  • כדי למצוא ולהסיר משאבים שלא נמצאים בשימוש, בוחרים באפשרות Refactor > Remove Unused Resources (ארגון מחדש > הסרת משאבים שלא נמצאים בשימוש) מסרגל התפריטים. התכונה 'זיהוי משאבים לא בשימוש' תומכת עכשיו במשאבים שמופנים רק על ידי משאבים לא בשימוש, בהפניות בקבצים גולמיים כמו הפניות לתמונות .html, ובמאפיינים tools:keep ו-tools:discard שמשמשים את כלי הכיווץ של משאבי Gradle. בנוסף, התכונה מתחשבת במערכי מקור לא פעילים (כמו משאבים שמשמשים בטעמים אחרים של בנייה) ומטפלת כראוי בייבוא של שדות סטטיים.
  • בודק אם הפניות מרומזות ל-API נתמכות בכל הפלטפורמות שמטורגטות על ידי minSdkVersion.
  • סימון שימוש לא תקין בתגי RecyclerView ו-Parcelable.
  • בדיקות של @IntDef, @IntRange ו-@Size כוללות עכשיו גם בדיקות של מערכים וארגומנטים משתנים (varargs) מסוג int.

שיפורים נוספים:

  • הוא מותאם ל-Android Emulator 2.0, שהוא מהיר יותר מאי פעם, תומך במגוון רחב יותר של מכשירים וירטואליים וכולל ממשק משתמש משופר באופן משמעותי. מידע נוסף על האמולטור החדש זמין בנתוני הגרסה של SDK Tools.
  • <li>Improvements to the <a href=
    "/tools/devices/managing-avds.html">Android Virtual Device
    Manager</a>:
      <ul>
        <li>System images are now categorized under the following tabs:
        <em>Recommended</em>, <em>x86</em>, and <em>Other</em>.
        </li>
        <li>Under advanced settings, you can enable multi-core support and
        specify the number of cores the emulator can use.
        </li>
        <li>Under advanced settings, you can determine how graphics are rendered
        on the emulator by selecting one of the following options:
          <ul>
            <li>
              <strong>Hardware:</strong> use you computer's graphics card for
              faster rendering.
            </li>
            <li>
              <strong>Software:</strong> use software-based rendering.
            </li>
            <li>
              <strong>Auto:</strong> let the emulator decide the best option. This
              is the default setting.
            </li>
          </ul>
        </li>
      </ul>
    </li>
    
    <li>Improved AAPT packaging times by specifying deploy target before the app
    is built. This allows Android Studio to efficiently package only the
    resources required by the specified device.
    </li>
    
    <li>Added Cloud Test Lab integration to provide on-demand app testing with
    the convenience and scalability of a cloud service. Learn more about how you
    can <a href="/training/testing/start/index.html#run-ctl">use Cloud
    Test Lab with Android Studio</a>.
    </li>
    
    <li>Added a preview of the new <a class="external-link" href=
    "//tools.android.com/tech-docs/gpu-profiler">GPU Debugger</a>. For graphics
    intensive applications, you can now visually step through your OpenGL ES code
    to optimize your app or game.
    </li>
    
    <li>Added Google App Indexing Test. Add support for URLs, app
    indexing, and search functionality to your apps to help drive more
    traffic to your app, discover which app content is used most, and attract
    new users. Test and validate URLs in your app all within Android
    Studio. See <a href=
    "/tools/help/app-link-indexing.html">Supporting URLs and App
      Indexing in Android Studio</a>.
    </li>
    
    <li>Upgrades from the latest IntelliJ 15 release, including improved code
    analysis and performance. See <a class="external-link" href=
    "https://www.jetbrains.com/idea/whatsnew">What's New in IntelliJ</a> for a
    complete description of the new features and enhancements.
    </li>
    
    <li>XML editor auto-complete now adds quotations marks when completing
    attributes. To check if this option is enabled, open the <b>Setting</b> or
    <b>Preferences</b> dialogue, navigate to <b>Editor &gt; General &gt; Smart
    Keys</b>, and check the box next to <b>Add quotes for attribute value on
    attribute completion</b>. <a class="external-link" href=
    "//b.android.com/195113">Issue: 195113</a>
    </li>
    
    <li>The XML editor now supports code completion for <a href=
    "/topic/libraries/data-binding/index.html#layout_details">data binding</a>
    expressions.
    </li>