توسعه دهنده اندروید | هم تیمی در coursee.org | در تلاش برای تبدیل رویا به واقعیت
نسخه ی ۳.۴ اندروید استودیو و قابلیت های جذاب آن
اندروید استودیو بعد از چند ماه وقفه در نسخه ی 3.3 , بالاخره چند روز پیش نسخه ی 3.4 البته در کانال Stable رو منتشر کرد که به گفته ی گوگل نتیجه ۶ ماه فعالیت تیم توسعه دهندگان Marble گوگل بوده است.
در این پست قرار هست به امکانات جدید اضافه شده در این نسخه اشاره ی کوتاهی داشته باشیم . پس با من همراه باشید.
۱) اولین قابلیت و شاید یکی از بهترین فیچر ها اضافه شدن R8 هست که نوعی از Obfuscator هست . که به صورت دیفالت در این نسخه از اندروید استودیو وجود دارد و عملکرد آن مانند Proguard و شاید بهتر و سریعتر از آن به فشرده سازی سورس کد کمک میکند.
قبل از R8 , فرآیند فشرده سازی کد (code shrinking process) در دو مرحله و دو وظیفه تقسیم و انجام می شد که اولین آن توسط ProGuard و دیگری توسط D8 and Desugar صورت می گرفت.
ولی به گفته ی خود گوگل R8 بسیار کارآمدتر از پروگارد است که با قابلیت های زیر همراه است :
کد های استفاده نشده را به طور کامل حذف می کند. حجم سورس و خروجی آن را کاهش می دهد.و عملکرد خروجی و اپلیکیشن را بهینه و بهتر میسازد و در کل در تایم خود و استفاده از منابع صرفه جویی می کند . در زیر تصاویری از عملکرد ProGuard و D8 and Desugar و هم چنین R8 را مشاهده خواهیم کرد :
که به طور پیش فرض در فایل (gradle.properties (Project properties
به این صورت فعال شده است :
android.enableR8=true
۲) اضافه شدن بخشی به نام Resource Manager . اگر دقت کنید تمامی اپلیکیشن هایی که توسعه می دهیم شامل منابع گرافیکی از جمله تصاویر , رنگ ها و ... هستند که در drawable و layout , values هستند.
با اضافه کردن ابزار Resource Manager که با دنبال کردن مسیر View > Tool Windows > Resource Manager. می توان به آن دسترسی پیدا کرد که دسترسی به این منابع را برای شما آسان تر کرده است و حتی نکته جالبتر اینکه از همین پنجره خیلی راحت با حالت drag & drop (کشیدن و رها کردن) روی لایه ی طراحی مورد نظر می توانید از این منابع استفاده کنید.
۳) ایمپورت کتابخانه ها Import Intentions
توسعه دهندگان اغلب در طول توسعه ی نرم افزار از کتابخانه های فایربیس یا جت پک (Jetpack or Firebase) استفاده می کنند.که گاهی اوقات اضافه کردن دپندسی های آن ها را در فایل گریدل فراموش می کنند به همین خاطر با ارور های مختلفی رو به رو می شوند .
قابلیت Import Intentions در اندروید استودیو ۳.۴ این مشکل را حل کرده است به گونه ایی که محض استفاده از کتابخانه های JetPack یا Firebase و فراموشی اضافه کردن وابستگی های آن ها , به شما ارور میدهد و پیشنهاد اضافه کردن وابستگی ها را با توجه به نیاز شما رو می دهد که کمک به کاهش پیدا کردن حجم برنامه می شود.
۴) بروز رسانی ویرایشگر لایه های گرافیگی Layout Editor Properties Panel
این قابلیت بیشتر جنبه ی زیبایی دارد تا کاربردی . بروز رسانی پنل طراحی لایه ها همراه با دسترسی سریعتر به خاصیت های یک ویو و نیز متمایز کردن رنگ های هشدار ها و خطا ها , بوده است .
۵ ) مدیریت گریدل با رابط کاربری Project Structure Dialog
اگر که توسعه ی اندروید در محیط اندروید استودیو باشید حتما با خطا های متنوع Gradle آشنایی دارید و می دانید که تسلط روی کار کرد آن و هم چنین رفع مشکلات آن کار سخت و حتی دردناکی است.
پس گوگل در این آپدیت با ارایه ی Project Structure Dialog یا به اختصار PSD این مشکل را حل کرده است. در واقع یک رابط کاربری برای مدیریت فایل های Gradle Project و وابستگی ها است و هم چنین برای تعریف متغیر های جدید و خواندن پیشنهاد ها برای بهتر کار کرد کد خود کمک خواهد کرد.
برای استفاده از این قابلیت این مسیر را در اندروید استودیو دنبال کنید :
File > Project Structure
یا خیلی مختصر از شورتکات آن یعنی Ctrl+Shift+Alt+S استفاده کنید.
۶ ) شبیه ساز همراه با Android Q Beta
اگر مایل هستید برای Android Q برنامه هایی را توسعه دهید ولی دوست ندارید از Android Studio Canary استفاده کنید , اندروید استودیو نسخه 3.4 این مشکل را برای شما حل کرده است به چه صورت ؟؟ این نسخه تمامی images های شبیه ساز مربوط به Android Q را دارد که شما هم اکنون می توانید همه برنامه های کاربردی اندروید Q به روز رسانی / اضافه کنید یا آنها را حذف کنید.
در واقع شما از پوسته های Pixel 3 و Pixel 3 XL استفاده خواهید کرد. ولی باز به توصیه گوگل گفته شده که برای داشتن قابلیت های بیشتر از کانال کنری اندروید استودیو استفاده کنید.
قابلیت های جدید همین ۶ مورد بودند . امیدوارم که مفید واقع شده باشه و خود منم در حین نوشتن این مقاله از این اپدیت به وجد اومده بودم .
ممنون از همراهی و پشتیبانی شما
سنا عبادی
سوم اردیبهشت ماه سال ۱۳۹۸ ساعت ۱۵:۱۰
مطلبی دیگر از این انتشارات
لیستی از مفاهیم مهم برای درک بهتر برنامه نویسی اندروید
مطلبی دیگر از این انتشارات
شی Context در اندروید
مطلبی دیگر از این انتشارات
پلاگینهای اندروید استودیو