Android Studio 2.0 (אפריל 2016)

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

Instant Run:

  • עכשיו אפשר לפרוס גרסאות build נקיות ב-Android Studio מהר יותר מאי פעם. בנוסף, העברת שינויים מצטברים בקוד למהדר או למכשיר פיזי מתבצעת כעת כמעט באופן מיידי. לבדוק את העדכונים בלי לפרוס מחדש גרסה חדשה לניפוי באגים, או במקרים רבים בלי להפעיל מחדש את האפליקציה.
  • <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.
  • דגלים לניסיונות שגויים להשתמש בהוספת מחרוזות (interpolation) כדי להוסיף מספרי גרסאות לקובץ build.gradle.
  • דגלים לכיתות אנונימיות שמרחיבות את הכיתה Fragment.
  • סימונים של קוד נייטיב במיקומים לא בטוחים, כמו התיקיות res/ ו-asset/. הדגל הזה מעודד לאחסן קוד מקורי בתיקייה libs/, שמארזת אותו באופן מאובטח בתיקייה data/app-lib/ של האפליקציה בזמן ההתקנה. AOSP:‏ #169950
  • דגלים לשיחות לא בטוחות ל-Runtime.load() ול-System.load(). AOSP:‏ #179980
  • כדי למצוא משאבים שלא בשימוש ולהסיר אותם, בוחרים באפשרות Refactor > Remove Unused Resources בסרגל התפריטים. זיהוי המשאבים שלא בשימוש תומך עכשיו במשאבים שרק משאבים שלא בשימוש מפנים אליהם, הפניות בקבצים גולמיים כמו הפניות לתמונות .html, והמאפיינים tools:keep ו-tools:discard שמשמשים את הכלי לצמצום משאבים ב-Gradle. בנוסף, המערכת מביאה בחשבון קבוצות מקור לא פעילות (כמו משאבים שמשמשים בטעמים אחרים של build) ומטפלת כראוי בייבוא שדות סטטיים.
  • בדיקה אם יש תמיכה בהפניות סמויות ל-API בכל הפלטפורמות שנכללות בטירגוט של minSdkVersion.
  • סימון של שימוש לא תקין ב-RecyclerView וב-Parcelable.
  • בבדיקה של @IntDef,‏ @IntRange ו-@Size נבדקות עכשיו גם מערכי int ו-varargs.

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

  • אופטימיזציה ל-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>