اندروید استودیو ۳.۲ (سپتامبر ۲۰۱۸)

اندروید استودیو ۳.۲ یک نسخه اصلی است که شامل مجموعه‌ای از ویژگی‌ها و بهبودهای جدید می‌شود.

۳.۲.۱ (اکتبر ۲۰۱۸)

این به‌روزرسانی برای اندروید استودیو ۳.۲ شامل تغییرات و اصلاحات زیر است:

  • نسخه کاتلینِ همراهِ نرم‌افزار اکنون ۱.۲.۷۱ است.
  • نسخه پیش‌فرض ابزارهای ساخت اکنون 28.0.3 است.
  • در کتابخانه‌ی ناوبری، انواع آرگومان از type به argType تغییر نام داده‌اند.
  • اشکالات زیر برطرف شده‌اند:
    • هنگام استفاده از کتابخانه‌ی اتصال داده، نام متغیرها با زیرخط باعث خطاهای کامپایل می‌شد.
    • CMake باعث از کار افتادن IntelliSense و دیگر ویژگی‌های CLion می‌شد.
    • اضافه کردن SliceProvider باعث ایجاد خطاهای کامپایل در پروژه‌هایی می‌شد که از کتابخانه‌های androidx.* استفاده نمی‌کردند.
    • برخی از تست‌های واحد کاتلین اجرا نمی‌شد.
    • مشکلی در اتصال داده‌ها باعث ایجاد خطای PsiInvalidElementAccessException می‌شد.
    • عناصر <merge> گاهی اوقات باعث از کار افتادن ویرایشگر طرح‌بندی می‌شدند.

۳.۲.۰ مشکلات شناخته‌شده

توجه: این مشکلات در اندروید استودیو ۳.۲.۱ حل شده‌اند.

  • ما اکیداً توصیه می‌کنیم از نسخه ۱.۲.۷۰ کاتلین استفاده نکنید.

    نسخه ۱.۲.۶۱ کاتلین اشکالی را که می‌تواند باعث هنگ کردن اندروید استودیو شود، برطرف کرده است، اما کاتلین ۱.۲.۷۰ این اصلاحیه را شامل نمی‌شود .

    با این حال، نسخه‌های ۱.۲.۷۱ و بالاتر کاتلین شامل این اصلاحیه هستند.

  • اگرچه معمولاً نیازی به مشخص کردن نسخه ابزار ساخت ندارید، اما هنگام استفاده از افزونه Android Gradle نسخه ۳.۲.۰ با مقداردهی renderscriptSupportModeEnabled روی true ، باید موارد زیر را در فایل build.gradle هر ماژول وارد کنید:

    android.buildToolsVersion "28.0.3"

دستیار تازه چه خبر؟

یک دستیار جدید شما را از آخرین تغییرات در اندروید استودیو مطلع می‌کند.

دستیار (assistant) پس از نصب یا به‌روزرسانی جدید اندروید استودیو، در صورتی که تشخیص دهد اطلاعات جدیدی برای نمایش وجود دارد، هنگام راه‌اندازی آن باز می‌شود. همچنین می‌توانید با انتخاب Help > What's new in Android Studio ، دستیار را باز کنید.

جت‌پک اندروید

اندروید جت‌پک با استفاده از کامپوننت‌ها، ابزارها و راهنمایی‌هایی که کارهای تکراری را حذف می‌کنند و شما را قادر می‌سازند تا سریع‌تر و آسان‌تر برنامه‌های با کیفیت بالا و قابل آزمایش بسازید، به تسریع توسعه اندروید کمک می‌کند. اندروید استودیو شامل به‌روزرسانی‌های زیر برای پشتیبانی از جت‌پک است. برای اطلاعات بیشتر، به مستندات جت‌پک مراجعه کنید.

ویرایشگر ناوبری جدید با اجزای ناوبری Android Jetpack ادغام می‌شود تا یک نمای گرافیکی برای ایجاد ساختار ناوبری برنامه شما ارائه دهد. ویرایشگر ناوبری، طراحی و پیاده‌سازی ناوبری بین مقاصد درون برنامه را ساده می‌کند.

در اندروید استودیو ۳.۲، ویرایشگر ناوبری یک ویژگی آزمایشی است. برای فعال کردن ویرایشگر ناوبری، روی File > Settings (در مک، Android Studio > Preferences ) کلیک کنید، دسته Experimental را در پنل سمت چپ انتخاب کنید، کادر کنار Enable Navigation Editor را علامت بزنید و اندروید استودیو را مجدداً راه‌اندازی کنید.

برای کسب اطلاعات بیشتر، مستندات ویرایشگر ناوبری را مطالعه کنید.

مهاجرت به اندروید ایکس

به عنوان بخشی از Jetpack، ما در حال انتقال کتابخانه‌های پشتیبانی اندروید به یک کتابخانه افزونه جدید اندروید با استفاده از فضای نام androidx هستیم. برای اطلاعات بیشتر، به نمای کلی AndroidX مراجعه کنید.

اندروید استودیو ۳.۲ با یک ویژگی جدید مهاجرت به شما در این فرآیند کمک می‌کند.

برای مهاجرت یک پروژه موجود به AndroidX، Refactor > Migrate to AndroidX را انتخاب کنید. اگر وابستگی‌های Maven دارید که به فضای نام AndroidX مهاجرت نکرده‌اند، سیستم ساخت اندروید استودیو نیز به طور خودکار آن وابستگی‌های پروژه را تبدیل می‌کند.

افزونه‌ی اندروید گریدل (Android Gradle) پرچم‌های سراسری زیر را ارائه می‌دهد که می‌توانید در فایل gradle.properties خود تنظیم کنید:

  • android.useAndroidX : وقتی روی true تنظیم شود، این پرچم نشان می‌دهد که شما می‌خواهید از این به بعد از AndroidX استفاده کنید. اگر این پرچم وجود نداشته باشد، اندروید استودیو طوری رفتار می‌کند که انگار این پرچم روی false تنظیم شده است.
  • android.enableJetifier : وقتی روی true تنظیم شود، این پرچم نشان می‌دهد که شما می‌خواهید از پشتیبانی ابزار (از افزونه Android Gradle) برای تبدیل خودکار کتابخانه‌های شخص ثالث موجود، طوری که انگار برای AndroidX نوشته شده‌اند، برخوردار باشید. اگر این پرچم وجود نداشته باشد، اندروید استودیو طوری رفتار می‌کند که انگار این پرچم روی false تنظیم شده است.

وقتی از دستور Migrate to AndroidX استفاده می‌کنید، هر دو flag روی true تنظیم می‌شوند.

اگر می‌خواهید بلافاصله استفاده از کتابخانه‌های AndroidX را شروع کنید و نیازی به تبدیل کتابخانه‌های شخص ثالث موجود ندارید، می‌توانید پرچم android.useAndroidX را روی true و پرچم android.enableJetifier را روی false تنظیم کنید.

بسته نرم‌افزاری اندروید

بسته نرم‌افزاری اندروید (Android App Bundle) یک فرمت آپلود جدید است که شامل تمام کدها و منابع کامپایل شده برنامه شما می‌شود، اما تولید APK و امضا را به فروشگاه گوگل پلی موکول می‌کند.

مدل جدید ارائه اپلیکیشن گوگل پلی، از بسته اپلیکیشن شما برای تولید و ارائه APKهای بهینه‌شده برای پیکربندی دستگاه هر کاربر استفاده می‌کند، بنابراین هر کاربر فقط کد و منابعی را که برای اجرای اپلیکیشن شما نیاز دارد دانلود می‌کند. دیگر نیازی به ساخت، امضا و مدیریت چندین APK نیست و کاربران دانلودهای کوچک‌تر و بهینه‌تری دریافت می‌کنند.

علاوه بر این، می‌توانید ماژول‌های ویژگی را به پروژه برنامه خود اضافه کنید و آنها را در بسته برنامه خود قرار دهید. سپس کاربران شما می‌توانند ویژگی‌های برنامه شما را در صورت تقاضا دانلود و نصب کنند.

برای ساخت یک بسته نرم‌افزاری، Build > Build Bundle(s) / APK(s) > Build Bundle(s) را انتخاب کنید.

برای اطلاعات بیشتر، از جمله دستورالعمل‌های ساخت و تحلیل یک بسته نرم‌افزاری اندروید، به بسته نرم‌افزاری اندروید مراجعه کنید.

داده‌های نمونه در ویرایشگر طرح‌بندی

بسیاری از طرح‌بندی‌های اندروید دارای داده‌های زمان اجرا هستند که می‌توانند تجسم ظاهر و حس یک طرح‌بندی را در مرحله طراحی توسعه برنامه دشوار کنند. اکنون می‌توانید به راحتی پیش‌نمایشی از نمای خود را در ویرایشگر طرح‌بندی پر از داده‌های نمونه مشاهده کنید. وقتی یک نما اضافه می‌کنید، یک دکمه در زیر نمای پنجره طراحی ظاهر می‌شود. برای تنظیم ویژگی‌های نمای زمان طراحی، روی این دکمه کلیک کنید. می‌توانید از بین الگوهای داده نمونه متنوع، یکی را انتخاب کنید و تعداد اقلام نمونه‌ای را که می‌خواهید نمای با آنها پر شود، مشخص کنید.

برای استفاده از داده‌های نمونه، یک RecyclerView به یک طرح‌بندی جدید اضافه کنید، روی دکمه ویژگی‌های زمان طراحی کلیک کنید. در زیر نما، و از میان نمونه‌های الگوهای داده، یکی را انتخاب کنید.

برش‌ها

Slices روشی جدید برای جاسازی بخش‌هایی از قابلیت‌های برنامه شما در سایر سطوح رابط کاربری در اندروید ارائه می‌دهد. به عنوان مثال، Slices امکان نمایش عملکرد و محتوای برنامه را در پیشنهادات جستجوی گوگل فراهم می‌کند.

اندروید استودیو ۳.۲ یک الگوی داخلی دارد که به شما کمک می‌کند برنامه خود را با APIهای جدید Slice Provider گسترش دهید، و همچنین بررسی‌های جدید lint برای اطمینان از اینکه هنگام ساخت Sliceها از بهترین شیوه‌ها پیروی می‌کنید، ارائه می‌دهد.

برای شروع، روی یک پوشه پروژه کلیک راست کرده و New > Other > Slice Provider را انتخاب کنید.

برای کسب اطلاعات بیشتر، از جمله نحوه آزمایش تعاملات Slice، راهنمای شروع به کار با Slices را مطالعه کنید.

کاتلین ۱.۲.۶۱

اندروید استودیو ۳.۲، کاتلین ۱.۲.۶۱ را به همراه دارد و SDK جدید اندروید، ادغام بهتری با کاتلین دارد. برای اطلاعات بیشتر، به وبلاگ توسعه‌دهندگان اندروید مراجعه کنید.

اینتلی‌جی آیدیا ۲۰۱۸.۱.۶

محیط توسعه‌ی اصلی اندروید استودیو (Android Studio IDE) با بهبودهایی از IntelliJ IDEA تا نسخه‌ی ۲۰۱۸.۱.۶ به‌روزرسانی شده است.

پروفایلرهای اندروید

ویژگی‌های جدید Android Profiler زیر را در اندروید استودیو ۳.۲ امتحان کنید.

جلسات

اکنون می‌توانید داده‌های Profiler را به عنوان session ذخیره کنید تا بعداً بتوانید آنها را مجدداً بررسی و مشاهده کنید. Profiler داده‌های session شما را تا زمانی که IDE را مجدداً راه‌اندازی کنید، نگه می‌دارد.

وقتی ردیابی یک متد را ضبط می‌کنید یا یک heap dump را ثبت می‌کنید ، IDE آن داده‌ها (همراه با فعالیت شبکه برنامه شما) را به عنوان یک ورودی جداگانه به session فعلی اضافه می‌کند و می‌توانید به راحتی بین ضبط‌ها جابجا شوید تا داده‌ها را مقایسه کنید.

ردیابی سیستم

در CPU Profiler ، پیکربندی جدید System Trace را برای بررسی فعالیت CPU و thread سیستم دستگاه خود انتخاب کنید. این پیکربندی ردیابی بر اساس systrace ساخته شده است و برای بررسی مشکلات سطح سیستم، مانند مشکلات رابط کاربری، مفید است.

هنگام استفاده از این پیکربندی ردیابی، می‌توانید با تجهیز کد C/C++ خود به API ردیابی بومی یا کد جاوا خود با کلاس Trace ، روال‌های مهم کد را به صورت بصری در جدول زمانی پروفایلر علامت‌گذاری کنید.

بررسی ارجاعات JNI در Memory Profiler

اگر برنامه خود را روی دستگاهی با اندروید ۸.۰ (سطح API 26) یا بالاتر نصب می‌کنید، اکنون می‌توانید با استفاده از Memory Profiler، تخصیص حافظه برای کد JNI برنامه خود را بررسی کنید.

در حالی که برنامه شما در حال اجرا است، بخشی از جدول زمانی را که می‌خواهید بررسی کنید انتخاب کنید و JNI heap را از منوی کشویی بالای لیست کلاس‌ها، همانطور که در زیر نشان داده شده است، انتخاب کنید. سپس می‌توانید اشیاء موجود در heap را طبق معمول بررسی کنید و روی اشیاء در تب Allocation Call Stack دوبار کلیک کنید تا ببینید ارجاعات JNI در کد شما کجا تخصیص داده شده و منتشر شده‌اند.

وارد کردن، صادر کردن و بررسی فایل‌های dump حافظه heap

اکنون می‌توانید فایل‌های هیپ حافظه .hprof که با Memory Profiler ایجاد شده‌اند را وارد، صادر و بررسی کنید.

با کلیک روی شروع جلسه پروفایلر جدید، فایل .hprof خود را وارد کنید در پنل Sessions پروفایلر و سپس انتخاب Load from file . سپس می‌توانید داده‌های آن را در Memory Profiler مانند هر heap dump دیگری بررسی کنید.

برای ذخیره داده‌های heap dump جهت بررسی‌های بعدی، از دکمه Export Heap Dump در سمت راست ورودی Heap Dump در پنل Sessions استفاده کنید. در پنجره Export As که ظاهر می‌شود، فایل را با پسوند .hprof ذخیره کنید.

ضبط فعالیت CPU در هنگام راه‌اندازی برنامه

اکنون می‌توانید فعالیت CPU را در طول راه‌اندازی برنامه خود، به شرح زیر ضبط کنید:

  1. از منوی اصلی، گزینه‌ی اجرا > ویرایش پیکربندی‌ها را انتخاب کنید.
  2. در زیر برگه Profileing مربوط به پیکربندی اجرای مورد نظر خود، کادر کنار Start recording a method trace on startup را علامت بزنید.
  3. از منوی کشویی، پیکربندی ضبط CPU را برای استفاده انتخاب کنید.
  4. با انتخاب Run > Profile ، برنامه خود را روی دستگاهی که اندروید ۸.۰ (سطح API 26) یا بالاتر دارد، مستقر کنید.

خروجی گرفتن از ردپاهای CPU

پس از ثبت فعالیت CPU با CPU Profiler، می‌توانید داده‌ها را به صورت یک فایل .trace استخراج کنید تا با دیگران به اشتراک بگذارید یا بعداً آنها را بررسی کنید.

برای خروجی گرفتن از ردیابی پس از ثبت فعالیت CPU، مراحل زیر را انجام دهید:

  1. روی ضبطی که می‌خواهید از جدول زمانی CPU خروجی بگیرید، کلیک راست کنید.
  2. از منوی کشویی، گزینه‌ی «صادر کردن ردپا» را انتخاب کنید.
  3. به جایی که می‌خواهید فایل را ذخیره کنید بروید و روی ذخیره کلیک کنید.

فایل‌های ردیابی CPU را وارد و بررسی کنید

اکنون می‌توانید فایل‌های .trace ایجاد شده با Debug API یا CPU Profiler را وارد و بررسی کنید. (در حال حاضر، نمی‌توانید رکوردهای System Trace را وارد کنید.)

با کلیک روی شروع جلسه پروفایلر جدید، فایل ردیابی خود را وارد کنید در پنل Sessions پروفایلر و سپس انتخاب Load from file . سپس می‌توانید داده‌های آن را در CPU Profiler مشابه حالت معمول بررسی کنید، با استثنائات زیر:

  • فعالیت CPU در طول جدول زمانی CPU نمایش داده نمی‌شود.
  • جدول زمانی فعالیت نخ فقط نشان می‌دهد که داده‌های ردیابی برای هر نخ در کجا موجود است و نه حالت‌های واقعی نخ (مانند اجرا، انتظار یا خواب).

ضبط فعالیت CPU با استفاده از Debug API

اکنون می‌توانید با تجهیز برنامه خود به Debug API ، ضبط فعالیت CPU را در CPU Profiler شروع و متوقف کنید. پس از استقرار برنامه خود در یک دستگاه، Profiler به طور خودکار شروع به ضبط فعالیت CPU می‌کند، زمانی که برنامه شما startMethodTracing(String tracePath) فراخوانی می‌کند، و Profiler ضبط را زمانی متوقف می‌کند که برنامه شما stopMethodTracing() را فراخوانی کند. هنگام ضبط فعالیت CPU که با استفاده از این API فعال می‌شود، CPU Profiler API Debug را به عنوان پیکربندی ضبط CPU انتخاب شده نشان می‌دهد.

پروفایل انرژی

نمایشگر انرژی، تصویری از میزان مصرف انرژی تخمینی برنامه شما و همچنین رویدادهای سیستمی که بر مصرف انرژی تأثیر می‌گذارند، مانند قفل بیدارباش، هشدارها و کارها، را نمایش می‌دهد.

وقتی برنامه خود را روی یک دستگاه متصل یا شبیه‌ساز اندروید با اندروید ۸.۰ (API 26) یا بالاتر اجرا می‌کنید، Energy Profiler به عنوان یک ردیف جدید در پایین پنجره Profiler ظاهر می‌شود.

برای نمایش حداکثری نمای Energy Profiler، روی ردیف Energy کلیک کنید. نشانگر ماوس خود را روی یک نوار در جدول زمانی قرار دهید تا تجزیه و تحلیل مصرف انرژی توسط منابع CPU، شبکه و موقعیت مکانی (GPS) و همچنین رویدادهای سیستم مربوطه را مشاهده کنید.

رویدادهای سیستمی که بر مصرف انرژی تأثیر می‌گذارند، در جدول زمانی سیستم ، زیر جدول زمانی انرژی ، نشان داده می‌شوند. جزئیات رویدادهای سیستم در محدوده زمانی مشخص شده، هنگام انتخاب یک محدوده زمانی در جدول زمانی انرژی ، در پنجره رویداد نشان داده می‌شوند.

برای مشاهده‌ی پشته‌ی فراخوانی و سایر جزئیات یک رویداد سیستمی، مانند قفل بیدارباش، آن را در پنجره‌ی رویداد انتخاب کنید. برای رفتن به کدی که مسئول یک رویداد سیستمی است، روی ورودی در پشته‌ی فراخوانی دوبار کلیک کنید.

بررسی پرز

اندروید استودیو ۳.۲ شامل بسیاری از ویژگی‌های جدید و بهبود یافته برای بررسی پرز (lint checking) است.

بررسی‌های جدید Lint به شما کمک می‌کند تا مشکلات رایج کد را پیدا و شناسایی کنید، از هشدارهای مربوط به مشکلات احتمالی کاربردپذیری گرفته تا خطاهای با اولویت بالا در مورد آسیب‌پذیری‌های امنیتی بالقوه.

Lint قابلیت همکاری جاوا/کاتلین را بررسی می‌کند

برای اطمینان از اینکه کد جاوای شما به خوبی با کد کاتلین شما سازگار است، بررسی‌های جدید lint، بهترین شیوه‌های شرح داده شده در راهنمای تعامل کاتلین را اجرا می‌کنند. نمونه‌هایی از این بررسی‌ها شامل جستجوی وجود حاشیه‌نویسی‌های Nullability، استفاده از کلمات کلیدی hard کاتلین و قرار دادن پارامترهای lambda در آخر است.

برای فعال کردن این بررسی‌ها، روی File > Settings ( در اندروید استودیو، روی مک، روی Preferences ) کلیک کنید تا پنجره تنظیمات باز شود، به بخش Editor > Inspections > Android > Lint > Interoperability > Kotlin Interoperability بروید و قوانینی را که می‌خواهید فعال کنید انتخاب کنید.

برای فعال کردن این بررسی‌ها برای ساخت‌های خط فرمان، موارد زیر را به فایل build.gradle خود اضافه کنید:

        android {
            lintOptions {
                check 'Interoperability'
            }
        }
        
      

بررسی پرز برای برش‌ها

بررسی‌های جدید پرز برای برش‌ها به شما کمک می‌کند تا از ساخت صحیح برش‌ها اطمینان حاصل کنید. برای مثال، بررسی‌های پرز در صورتی که یک اقدام اصلی را به یک برش اختصاص نداده باشید، به شما هشدار می‌دهد.

هدف جدید Gradle

از وظیفه جدید lintFix Gradle برای اعمال مستقیم تمام اصلاحات ایمن پیشنهاد شده توسط بررسی lint به کد منبع استفاده کنید. نمونه‌ای از بررسی lint که یک اصلاح ایمن برای اعمال پیشنهاد می‌دهد، SyntheticAccessor است.

به‌روزرسانی‌های فراداده

متادیتاهای مختلفی، مانند بررسی تبدیل سرویس، برای بررسی‌های lint به‌روزرسانی شده‌اند تا با اندروید ۹ (سطح API 28) کار کنند.

هشدار در صورت اجرای lint روی یک نسخه جدید

Lint اکنون نوع و نسخه‌ای که خط پایه با آن ضبط شده است را ثبت می‌کند و اگر آن را روی نوع متفاوتی از نسخه‌ای که خط پایه با آن ایجاد شده است اجرا کنید، به شما هشدار می‌دهد.

بهبودهایی در بررسی‌های پرز موجود

اندروید استودیو ۳.۲ شامل پیشرفت‌های زیادی در بررسی‌های lint موجود است. برای مثال، بررسی‌های چرخه منابع اکنون برای انواع منابع اضافی اعمال می‌شود و تشخیص‌دهنده ترجمه می‌تواند ترجمه‌های از دست رفته را در ویرایشگر پیدا کند.

شناسه‌های مسئله بیشتر قابل کشف هستند

شناسه‌های مشکل اکنون در مکان‌های بیشتری، از جمله در پنجره نتایج بازرسی ، نشان داده می‌شوند. این امر یافتن اطلاعات مورد نیاز برای فعال یا غیرفعال کردن بررسی‌های خاص را از طریق lintOptions در build.gradle برای شما آسان‌تر می‌کند.

برای اطلاعات بیشتر، به پیکربندی گزینه‌های lint با Gradle مراجعه کنید.

اتصال داده نسخه ۲

اتصال داده نسخه ۲ (Data Binding V2) اکنون به طور پیش‌فرض فعال شده است و با نسخه ۱ سازگار است. این بدان معناست که اگر وابستگی‌های کتابخانه‌ای دارید که با نسخه ۱ کامپایل کرده‌اید، می‌توانید از آنها در پروژه‌هایی که از اتصال داده نسخه ۲ استفاده می‌کنند، استفاده کنید. با این حال، توجه داشته باشید که پروژه‌هایی که از نسخه ۱ استفاده می‌کنند، نمی‌توانند وابستگی‌هایی را که با نسخه ۲ کامپایل شده‌اند، مصرف کنند.

قندزدایی D8

در اندروید استودیو ۳.۱، مرحله‌ی desugaring به عنوان یک ویژگی آزمایشی در ابزار D8 ادغام شد و زمان کلی ساخت را کاهش داد. در اندروید استودیو ۳.۲، desugaring با D8 به طور پیش‌فرض فعال است.

فشرده‌ساز کد جدید

R8 ابزاری جدید برای کوچک‌سازی و مبهم‌سازی کد است که جایگزین ProGuard می‌شود. می‌توانید با وارد کردن موارد زیر در فایل gradle.properties پروژه خود، استفاده از نسخه پیش‌نمایش R8 را شروع کنید:

      android.enableR8 = true
    

ABI های پیش فرض برای چند APK تغییر کردند

هنگام ساخت چندین APK که هر کدام ABI متفاوتی را هدف قرار می‌دهند، افزونه دیگر به طور پیش‌فرض APKهایی برای ABIهای زیر تولید نمی‌کند: mips ، mips64 و armeabi .

اگر می‌خواهید فایل‌های APK بسازید که این ABIها را هدف قرار می‌دهند، باید از NDK r16b یا پایین‌تر استفاده کنید و ABIها را در فایل build.gradle خود، همانطور که در زیر نشان داده شده است، مشخص کنید:

    splits {
        abi {
            include 'armeabi', 'mips', 'mips64'
            ...
        }
    }
    
    splits {
        abi {
            include("armeabi", "mips", "mips64")
            ...
        }
    }
    

توجه: این تغییر رفتار در اندروید استودیو ۳.۱ RC1 و بالاتر نیز گنجانده شده است.

ویژگی‌های ویرایشگر بهبود یافته برای فایل‌های ساخت CMake

اگر از CMake برای اضافه کردن کد C و C++ به پروژه خود استفاده می‌کنید، اندروید استودیو اکنون شامل ویژگی‌های ویرایشگر بهبود یافته‌ای است که به شما در ویرایش اسکریپت‌های ساخت CMake کمک می‌کند، مانند موارد زیر:

  • هایلایت کردن سینتکس و تکمیل کد: IDE اکنون هایلایت کرده و تکمیل کد را برای دستورات رایج CMake پیشنهاد می‌دهد. علاوه بر این، می‌توانید با کلیک روی یک فایل هنگام فشار دادن کلید Control (Command در مک) به آن فایل بروید.
  • قالب‌بندی مجدد کد: اکنون می‌توانید از گزینه قالب‌بندی مجدد کد IntelliJ برای اعمال سبک‌های کد به اسکریپت‌های ساخت CMake خود استفاده کنید.
  • بازسازی ایمن: ابزارهای بازسازی داخلی IDE اکنون بررسی می‌کنند که آیا فایل‌هایی را که در اسکریپت‌های ساخت CMake خود به آنها ارجاع می‌دهید، تغییر نام می‌دهید یا حذف می‌کنید یا خیر.

هنگام استفاده از پنجره پروژه در نسخه‌های قبلی اندروید استودیو، می‌توانستید فقط فایل‌های هدر متعلق به کتابخانه‌هایی را که از یک پروژه محلی می‌سازید، پیمایش و بررسی کنید. با این نسخه، اکنون می‌توانید فایل‌های هدر موجود در وابستگی‌های کتابخانه C/C++ خارجی را که به پروژه برنامه خود وارد می‌کنید، مشاهده و بررسی کنید.

اگر از قبل کد و کتابخانه‌های C/C++ را در پروژه خود گنجانده‌اید ، پنجره پروژه را در سمت چپ IDE با انتخاب View > Tool Windows > Project از منوی اصلی باز کنید و Android را از منوی کشویی انتخاب کنید. در دایرکتوری cpp ، تمام هدرهایی که در محدوده پروژه برنامه شما هستند، همانطور که در زیر نشان داده شده است، در زیر گره include برای هر یک از وابستگی‌های کتابخانه محلی C/C++ شما سازماندهی شده‌اند.

multidex بومی به طور پیش‌فرض فعال است

نسخه‌های قبلی اندروید استودیو، هنگام استقرار نسخه اشکال‌زدایی یک برنامه روی دستگاهی که API اندروید سطح ۲۱ یا بالاتر را اجرا می‌کند، multidex بومی را فعال می‌کردند. اکنون، چه در حال استقرار روی یک دستگاه باشید و چه در حال ساخت یک APK برای انتشار، افزونه اندروید برای Gradle، multidex بومی را برای همه ماژول‌هایی که minSdkVersion=21 یا بالاتر را تنظیم می‌کنند، فعال می‌کند.

AAPT2 به مخزن Maven گوگل منتقل شد

از اندروید استودیو ۳.۲ به بعد، منبع AAPT2 (ابزار بسته‌بندی دارایی‌های اندروید ۲) مخزن Maven گوگل است.

برای استفاده از AAPT2، مطمئن شوید که یک وابستگی google() در فایل build.gradle خود دارید، همانطور که در اینجا نشان داده شده است:

    buildscript {
        repositories {
            google() // here
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.2.0'
        }
    }
    allprojects {
        repositories {
            google() // and here
            jcenter()
        }
    }
    
    buildscript {
        repositories {
            google() // here
            jcenter()
        }
        dependencies {
            classpath("com.android.tools.build:gradle:3.2.0")
        }
    }
    allprojects {
        repositories {
            google() // and here
            jcenter()
        }
    }
    

نسخه جدید AAPT2 بسیاری از مشکلات، از جمله بهبود مدیریت کاراکترهای غیر ASCII در ویندوز را برطرف می‌کند.

حذف پیکربندی بنا به درخواست

گزینه پیکربندی بر اساس تقاضا از اندروید استودیو حذف شده است.

اندروید استودیو دیگر آرگومان --configure-on-demand را به Gradle ارسال نمی‌کند.

دستیار اتصال ADB

دستیار اتصال ADB جدید، دستورالعمل‌های گام به گامی را برای کمک به شما در راه‌اندازی و استفاده از دستگاه از طریق اتصال Android Debug Bridge (ADB) ارائه می‌دهد.

برای شروع دستیار، ابزارها > دستیار اتصال را انتخاب کنید.

دستیار اتصال ADB دستورالعمل‌ها، کنترل‌های درون متنی و فهرستی از دستگاه‌های متصل را در مجموعه‌ای از صفحات در پنل دستیار ارائه می‌دهد.

بهبودهای شبیه‌ساز

اکنون می‌توانید اسنپ‌شات‌های یک AVD (دستگاه مجازی اندروید) را در هر زمانی در شبیه‌ساز اندروید ذخیره و بارگذاری کنید، که این امر بازگرداندن یک دستگاه شبیه‌سازی شده به حالت شناخته شده برای آزمایش را سریع و آسان می‌کند. هنگام ویرایش یک AVD با استفاده از AVD Manager، می‌توانید مشخص کنید که کدام اسنپ‌شات AVD هنگام شروع AVD بارگذاری شود.

کنترل‌های مربوط به ذخیره، بارگذاری و مدیریت اسنپ‌شات‌های AVD اکنون در تب اسنپ‌شات‌ها در پنجره‌ی Extended controls شبیه‌ساز قرار دارند.

برای جزئیات، به عکس‌های فوری مراجعه کنید.

برای اطلاعات بیشتر در مورد موارد جدید و تغییرات در شبیه‌ساز، به یادداشت‌های انتشار شبیه‌ساز مراجعه کنید.