تجزیه و تحلیل و خودکارسازی ارتقاء وابستگی

به دنبال ساده سازی مدیریت وابستگی هستید؟ افزودن برخی ابزارها به فرآیندهای شما می تواند کارها را تسریع کند و شما را به مناطقی راهنمایی کند که ممکن است کمی توجه بیشتری را طلب کند.

ارتقاء خودکار نسخه

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

تعدادی ابزار شخص ثالث وجود دارد که می تواند فرآیند را خودکار کند، فایل های ساخت شما را ارتقا دهد و به صورت اختیاری یک درخواست کشش برای تغییر ایجاد کند. آنها مکان یابی می کنند و به آخرین نسخه های موجود هر وابستگی به روز می شوند، اما شما هنوز باید نتایج را قبل از انتشار تجزیه و تحلیل کنید تا از سازگاری رفتاری اطمینان حاصل کنید. برخی از نمونه های محبوب عبارتند از:

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

پلاگین Gradle versions به شما کنترل دستی بیشتری برای ارتقاء می دهد. اجرای وظیفه dependencyUpdates آن (از طریق . /gradlew :dependencyUpdates ) گزارشی از نسخه های جدیدتر وابستگی های کتابخانه شما ایجاد می کند. این می تواند برای بررسی وضعیت کتابخانه و هدف قرار دادن دستی کتابخانه هایی که می خواهید در یک زمان معین ارتقا دهید مفید باشد.

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

گزارش تغییرات وابستگی

ارتقاء نسخه‌های کتابخانه‌هایی که مستقیماً از آنها استفاده می‌کنید می‌تواند تأثیر بسیار گسترده‌تری بر برنامه شما داشته باشد. هر کتابخانه ای که استفاده می کنید ممکن است به وابستگی های کتابخانه دیگری نیاز داشته باشد که یک نمودار وابستگی انتقالی بزرگتر را تشکیل می دهد.

Dependency guard تغییرات آن نمودار را بین نسخه های برنامه یا کتابخانه شما آشکار می کند. این می تواند یک ابزار ارزشمند برای تجزیه و تحلیل ارتقاء باشد و اطمینان حاصل کند که ارتقاء مستقیم و غیر مستقیم را در نظر می گیرید.

وابستگی های استفاده نشده و سوء استفاده را تشخیص دهید

سالم نگه داشتن ساخت می تواند سرعت ساخت را بهبود بخشد و اطمینان حاصل کند که برنامه و کتابخانه شما به وابستگی های مورد نیاز خود دسترسی دارد. افزونه Gradle تجزیه و تحلیل وابستگی ابزارهایی را در اختیار شما قرار می دهد تا وابستگی های خود را بررسی کنید و استفاده مناسب در فایل های ساخت خود را بررسی کنید.

گزارش های آن عبارتند از:

  • وابستگی های استفاده نشده
  • وابستگی‌های انتقالی استفاده شده (شما باید به صراحت آن‌ها را اعلام کنید تا اگر وابستگی‌های مستقیم شما استفاده از آن‌ها را متوقف کردند، برنامه‌تان بتواند به آن‌ها دسترسی داشته باشد)
  • وابستگی هایی که در محدوده اشتباه اعلام شده اند
  • استفاده غیر ضروری از برخی افزونه ها
  • نماهای GraphViz از وابستگی های شما

مدیریت مجوز

توسعه دهندگان هر کتابخانه مجوز آنها را برای استفاده شما صادر می کنند. شما ملزم به رعایت شرایط مجوز هستید وگرنه نمی توانید از آن کتابخانه استفاده کنید. برخی از مجوزها بسیار مجاز هستند و اغلب فقط به اطلاعیه استفاده از آنها نیاز دارند. برخی "ویروسی" در نظر گرفته می شوند. اگر از آن کتابخانه ها استفاده می کنید، باید همان مجوز را برای برنامه یا کتابخانه خود اعمال کنید.

مجوزها می توانند با هر نسخه ای تغییر کنند. هر زمان که ارتقا می دهید، باید تأیید کنید که وابستگی هایی که استفاده می کنید به روشی سازگار با برنامه یا کتابخانه شما مجوز دارند.

گزارش مجوزها

افزونه Gradle License Report با گزارش مجوزهای همه وابستگی های شما به شما کمک می کند. هنگام ارتقاء هر گونه وابستگی، حتماً این گزارش را بررسی کنید. بررسی کنید که مجوزها با الزامات شما سازگار هستند و مطمئن شوید که شرایط مورد نیاز آنها را رعایت می کنید.

اعلامیه های مجوز را ایجاد کنید

شرایط صدور مجوز اغلب مستلزم اعلامیه ای است که کاربران یک برنامه کاربردی یا مصرف کنندگان یک کتابخانه می توانند به آن دسترسی داشته باشند. پلاگین مجوز OSS خدمات Play و پلاگین مجوز Gradle داده ها و فعالیت هایی را برای نمایش اطلاعات مجوز تولید می کنند. (توجه داشته باشید که ممکن است بخواهید ابزار خود را برای نمایش داده ها بر اساس رابط کاربری برنامه خود ایجاد کنید).

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