آموزش برنامه نویسی اندروید استودیو

گریدل (gradle) چیست

گریدل را می توان یک سیستم ساخت خودکار (build automation system) نامید. اپلیکیشن های اندرویدی از نظر ساختاری به نسبت گذشته پیچیده شده‌اند. در گذشته کد های برنامه توسط برنامه نویس نوشته می شد و پس از کامپایل شدن اجرا می شد. اما امروزه یک برنامه نویس قبل از اجرای برنامه نیاز به انجام عملیات متنوع و متعددی برای ساخت فایل های اجرایی برنامه نظیر یک فایل apk یا exe دارد. مجموعه ای از کدها به صورت خودکار و پویا با توجه به کدهای نوشته شده توسط برنامه نویس ایجاد می‌شوند و برای کامپایل به کدهای خام برنامه نویس افزوده می‌شوند. تست های نوشته شده توسط برنامه نویس اجرا می شود و نتیجه آن اعلام می شود. در آخر همه فایل های مورد نیاز به همراه کد های کامپایل شده برنامه درون یک فایل zip قرار گرفته و پسوند فایل به apk تغییر می‌کند و آماده‌ی نصب می‌شود. پس از هر تغییر در برنامه، برای اجرا این عملیاتتکرار می‌شود به همین علت به این فرآیند «عملیات ساخت» گفته می‌شود. به علت زمان‌بر بودن و پیچیدگی‌های مراحل ساخت برنامه نویسان برای ایجاد «سیستم های ساخت اتوماتیک» مانند gradle دست یه کار شده‌اند.

بررسی فایل‌های مربوط به Gradle در پروژهٔ اندروید

اگر در اندروید استودیو یک پروژه‌ی جدید ایجاد کنید، به صورت خودکار چند فایل در پوشه اصلی ایجاد می‌شود که برای gradle‌ نقش حیاتی ایفا می کنند.

فایل settings.gradle

برای این‌ که گریدل بتواند ساختار چند پروژه‌ای را مدیریت کند، در ابتدای کار می بایست درختی از اشیا‌ را بسازد که نشان‌دهنده سلسله‌مراتب پروژه‌ها می‌باشد. برای ساختن این درخت، Gradle محتوای فایل ‍settings.gradle را بررسی می‌کند. برای روشن‌تر شدن موضوع، فایل settings.gradle را باز کنید:

این خط محتوای پیش‌فرض در فایل settings.gradle برای پروژه‌های اندرویدی است. در این فایل مشخص شده که پروژهٔ ما در بالاترین سطح، به پروژهٔ دیگری به نام app وابسته است.

فایل build.gradle

اگر به ساختار درختی پروژهٔ اندروید خود در اندروید استودیو نگاه کنید، دو فایل با نام gradle.build را خواهید دید. هر یک از این فایل‌ها مسئول پیکربندی یک پروژه در Gradle هستند.

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