علاوه بر آزمایشهای ساختمانی برای اطمینان از اینکه برنامه شما الزامات عملکردی خود را برآورده میکند، مهم است که کد را از طریق ابزار lint نیز اجرا کنید تا مطمئن شوید کد شما هیچ مشکل ساختاری ندارد. ابزار lint به یافتن کدهایی با ساختار ضعیف کمک می کند که می تواند بر قابلیت اطمینان و کارایی برنامه های Android شما تأثیر بگذارد و نگهداری کد شما را سخت تر کند. اکیداً توصیه می شود قبل از انتشار برنامه خود، خطاهایی را که پرز تشخیص می دهد اصلاح کنید.
به عنوان مثال، اگر فایلهای منبع XML شما حاوی فضاهای نام استفاده نشده باشد، این فضا اشغال میکند و نیاز به پردازش غیر ضروری دارد. سایر مسائل ساختاری، مانند استفاده از عناصر منسوخ یا فراخوانهای API که توسط نسخههای API هدف پشتیبانی نمیشوند، ممکن است منجر به عدم اجرای صحیح کد شوند. لینت می تواند به شما در رفع این مشکلات کمک کند.
برای بهبود عملکرد پردهبندی، میتوانید حاشیهنویسی را نیز به کد خود اضافه کنید .
Android Studio یک ابزار اسکن کد به نام lint ارائه میکند که میتواند به شما کمک کند بدون نیاز به اجرای برنامه یا نوشتن موارد تست، مشکلات مربوط به کیفیت ساختاری کد خود را شناسایی و اصلاح کنید. هر مشکلی که توسط این ابزار شناسایی میشود، با یک پیام توصیفی و یک سطح شدت گزارش میشود تا بتوانید بهبودهای حیاتی را که باید انجام شوند، اولویتبندی کنید. همچنین می توانید سطح شدت یک مشکل را کاهش دهید تا مسائلی را که به پروژه شما مرتبط نیستند نادیده بگیرید یا برای برجسته کردن مشکلات خاص، سطح شدت را افزایش دهید.
ابزار lint فایلهای منبع پروژه اندروید شما را از نظر اشکالات احتمالی و بهبودهای بهینهسازی از نظر صحت، امنیت، عملکرد، قابلیت استفاده، دسترسی و بینالمللی شدن بررسی میکند. هنگام استفاده از Android Studio، بازرسی های پیکربندی شده و IDE هنگام ساخت برنامه اجرا می شود. با این حال، همانطور که در این صفحه توضیح داده شده است، می توانید بازرسی ها را به صورت دستی اجرا کنید یا از خط فرمان، lint را اجرا کنید .
هنگامی که از Android Studio استفاده می کنید، ابزار لینت داخلی کد شما را بررسی می کند. شما می توانید هشدارها و خطاها را به دو صورت مشاهده کنید:
- به عنوان متن پاپ آپ در پنجره ویرایشگر. هنگامی که lint مشکلی را پیدا می کند، کد مشکل را به رنگ زرد برجسته می کند. برای مسائل جدی تر، زیر کد را با رنگ قرمز خط می کشد.
- وقتی روی Code > Inspect Code کلیک میکنید، در پنجره Inspection Results .
توجه: وقتی کد شما در Android Studio کامپایل میشود، بازرسیهای کد IntelliJ اضافی برای سادهتر کردن بررسی کد اجرا میشود.
شکل 1 نشان می دهد که چگونه ابزار lint فایل های منبع برنامه را پردازش می کند.
- فایل های منبع برنامه
- فایلهای منبع شامل فایلهایی هستند که پروژه اندروید شما را تشکیل میدهند، از جمله فایلهای Kotlin، Java، و XML، نمادها و فایلهای پیکربندی ProGuard.
- فایل
lint.xml
- یک فایل پیکربندی که میتوانید از آن برای تعیین هر گونه بررسی لنت که میخواهید حذف کنید و برای سفارشی کردن سطوح شدت مشکل استفاده کنید.
- ابزار پرز
- یک ابزار اسکن کد ایستا که می توانید در پروژه اندروید خود از خط فرمان یا در Android Studio اجرا کنید. ابزار lint مشکلات کد ساختاری را بررسی می کند که می تواند بر کیفیت و عملکرد برنامه اندروید شما تأثیر بگذارد.
- نتایج بررسی پرز
- می توانید نتایج را از lint در کنسول یا پنجره Inspection Results در Android Studio مشاهده کنید. اگر
lint
از خط فرمان اجرا کنید، نتایج در پوشهbuild/
نوشته می شود. برای جزئیات بیشتر، به بخش مربوط به اجرای بازرسی به صورت دستی مراجعه کنید.
اگر از Android Studio یا Gradle استفاده می کنید، با وارد کردن یکی از دستورات زیر از دایرکتوری ریشه پروژه خود، از بسته بندی Gradle برای فراخوانی وظیفه lint
برای پروژه خود استفاده کنید:
- در ویندوز:
gradlew lint
- در لینوکس یا macOS:
./gradlew lint
شما باید خروجی مشابه زیر را ببینید:
> Task :app:lintDebug Wrote HTML report to file:<path-to-project>/app/build/reports/lint-results-debug.html
هنگامی که ابزار lint بررسی های خود را کامل می کند، مسیرهایی را به نسخه های XML و HTML گزارش lint ارائه می دهد. سپس می توانید به گزارش HTML بروید و آن را در مرورگر خود باز کنید، همانطور که در شکل 2 نشان داده شده است.
اگر پروژه شما شامل انواع ساخت است، lint فقط نوع پیش فرض را بررسی می کند. اگر میخواهید lint را روی یک نوع متفاوت اجرا کنید، باید نام نوع را با حروف بزرگ بنویسید و پیشوند آن را با lint
قرار دهید.
./gradlew lintRelease
برای کسب اطلاعات بیشتر در مورد اجرای وظایف Gradle از خط فرمان، ساختن برنامه خود را از خط فرمان بخوانید.
اگر از Android Studio یا Gradle استفاده نمیکنید، ابزارهای خط فرمان Android SDK را برای استفاده از ابزار مستقل لینت نصب کنید. ابزار lint را در android_sdk /cmdline-tools/ version /bin/lint
پیدا کنید.
توجه: اگر بخواهید ابزار مستقل را روی یک پروژه Gradle اجرا کنید، خطا می دهد. همیشه باید از gradle lint
(در ویندوز) یا ./gradlew lint
(در macOS یا Linux) برای اجرای lint در پروژه Gradle استفاده کنید.
برای اجرای lint در برابر لیستی از فایل ها در دایرکتوری پروژه، از دستور زیر استفاده کنید:
lint [flags] <project directory>
به عنوان مثال، می توانید دستور زیر را برای اسکن فایل های زیر پوشه myproject
و زیر شاخه های آن صادر کنید. شناسه مشکل MissingPrefix
به lint میگوید که فقط ویژگیهای XML را اسکن کند که پیشوند فضای نام Android را ندارند.
lint --check MissingPrefix myproject
برای مشاهده لیست کامل پرچم ها و آرگومان های خط فرمان پشتیبانی شده توسط ابزار، از دستور زیر استفاده کنید:
lint --help
مثال زیر خروجی کنسول را هنگام اجرای دستور lint در برابر پروژه ای به نام زلزله نشان می دهد:
$ lint Earthquake Scanning Earthquake: ............................................................................................................................... Scanning Earthquake (Phase 2): ....... AndroidManifest.xml:23: Warning: <uses-sdk> tag appears after <application> tag [ManifestOrder] <uses-sdk android:minSdkVersion="7" /> ^ AndroidManifest.xml:23: Warning: <uses-sdk> tag should specify a target API level (the highest verified version; when running on later versions, compatibility behaviors may be enabled) with android:targetSdkVersion="?" [UsesMinSdkAttributes] <uses-sdk android:minSdkVersion="7" /> ^ res/layout/preferences.xml: Warning: The resource R.layout.preferences appears to be unused [UnusedResources] res: Warning: Missing density variation folders in res: drawable-xhdpi [IconMissingDensityFolder] 0 errors, 4 warnings
خروجی مثال چهار اخطار و هیچ خطایی را لیست می کند.
دو هشدار مربوط به فایل AndroidManifest.xml
پروژه است:
-
ManifestOrder
-
UsesMinSdkAttributes
Preferences.xml
است: UnusedResources
. یک هشدار مربوط به دایرکتوری بهطور پیشفرض، هنگامی که اسکن پرز را اجرا میکنید، ابزار تمام مشکلاتی را که لینت پشتیبانی میکند بررسی میکند. همچنین میتوانید مشکلات را برای بررسی لینت محدود کنید، و میتوانید سطوح شدت را برای مشکلات تعیین کنید. برای مثال، میتوانید بررسی پرزها را برای مسائل خاصی که به پروژه شما مرتبط نیستند، متوقف کنید، و میتوانید پرزها را طوری پیکربندی کنید که مسائل غیر بحرانی را در سطح شدت پایینتر گزارش کند. سطوح شدت عبارتند از: می توانید بررسی پرز را برای سطوح مختلف پیکربندی کنید: شما می توانید تنظیمات برگزیده بررسی پرز خود را در فایل فایل برای تغییر سطح شدت یک مشکل یا غیرفعال کردن بررسی پرز برای مشکل، ویژگی شدت را در تگ نکته: برای لیست کاملی از مشکلات پشتیبانی شده از lint و شناسه های مربوط به آنها، دستور مثال زیر محتویات یک فایل این مثال نشان می دهد که چگونه انواع مختلف مشکل گزارش شده است. بررسی میتوانید بررسی پرز برای فایلهای منبع Kotlin، Java و XML خود را در گفتگوی Preferences خاموش کنید: می توانید با انتخاب نمایه مناسب، این موارد را برای IDE یا برای پروژه های جداگانه تنظیم کنید. برای غیرفعال کردن بررسی پرز به طور خاص برای یک کلاس یا متد در پروژه Android خود، حاشیه نویسی مثال زیر نشان می دهد که چگونه می توانید بررسی پرزها را برای مشکل همین کار را می توان در هر Composable انجام داد. قطعه کد زیر نشان می دهد که چگونه می توانید چک های مثال زیر نحوه غیرفعال کردن بررسی پرز برای مشکل برای جلوگیری از بررسی همه مشکلات پرز در فایل، از کلمه کلیدی شما می توانید از همان حاشیه نویسی برای سرکوب بررسی پرزها در هر تابع Composable استفاده کنید. از ویژگی مثال زیر نشان می دهد که چگونه می توانید بررسی پرزها را برای مشکل برای غیرفعال کردن بیش از یک مسئله، موارد غیرفعال کردن را در یک رشته جدا شده با کاما فهرست کنید. به عنوان مثال: برای جلوگیری از بررسی تمام مشکلات پرز در عنصر XML، از کلمه کلیدی افزونه Android برای Gradle به شما امکان میدهد تا با استفاده از بلوک قطعه کد زیر برخی از ویژگی هایی را که می توانید پیکربندی کنید نشان می دهد: همه روشهای پرز که سطح شدت معین یک مشکل را نادیده میگیرند، ترتیب پیکربندی را رعایت میکنند. به عنوان مثال، تعیین یک مشکل به عنوان کشنده در میتوانید از مجموعه هشدارهای فعلی پروژه خود یک عکس بگیرید، سپس از آن بهعنوان پایهای برای اجرای بازرسیهای آینده استفاده کنید تا فقط مسائل جدید گزارش شوند. عکس فوری پایه به شما امکان می دهد بدون نیاز به بازگشت به عقب و رفع تمام مشکلات موجود، شروع به استفاده از lint برای شکست ساختن کنید. برای ایجاد یک اسنپ شات پایه، فایل هنگامی که برای اولین بار این خط را اضافه می کنید، فایل سپس با انتخاب Code > Inspect Code یا از خط فرمان به صورت زیر، lint را از IDE اجرا کنید. خروجی محل فایل اجرای اگر میخواهید فقط انواع خاصی از مشکل را به خط مبنا اضافه کنید، مواردی را که باید با ویرایش فایل اگر پس از ایجاد خط پایه، اخطار جدیدی را به پایگاه کد اضافه کنید، lint فقط اشکالات تازه معرفی شده را فهرست می کند. هنگامی که یک خط پایه در حال اجرا است، یک هشدار اطلاعاتی دریافت میکنید که به شما میگوید یک یا چند مشکل فیلتر شدهاند، زیرا در خط مبنا فهرست شدهاند. این اخطار به شما کمک میکند به یاد داشته باشید که یک خط پایه را پیکربندی کردهاید و باید همه مشکلات را در مقطعی برطرف کنید. این هشدار اطلاعاتی همچنین مواردی را که دیگر گزارش نمیشوند را پیگیری میکند. این اطلاعات به شما اطلاع میدهد که آیا واقعاً مشکلات را برطرف کردهاید، بنابراین میتوانید به صورت اختیاری خط پایه را دوباره ایجاد کنید تا از بازگشت ناشناخته خطا جلوگیری کنید. توجه: خطوط پایه زمانی فعال میشوند که بازرسیها را در حالت دستهای در IDE اجرا میکنید، اما برای بررسیهای درون ویرایشگر که هنگام ویرایش فایل در پسزمینه اجرا میشوند، نادیده گرفته میشوند. این به این دلیل است که خطوط پایه برای مواردی در نظر گرفته شده است که یک پایگاه کد دارای تعداد زیادی اخطار موجود است، اما شما میخواهید هنگام لمس کد، مشکلات را به صورت محلی برطرف کنید. برای اجرای دستی lint پیکربندی شده و سایر بازرسی های IDE، Code > Inspect Code را انتخاب کنید. نتایج بازرسی در پنجره Inspection Results ظاهر می شود. فایل هایی را که می خواهید تجزیه و تحلیل کنید ( حوزه بازرسی) و بازرسی هایی که می خواهید اجرا کنید ( نمایه بازرسی) را به صورت زیر انتخاب کنید: در گفتگوی Specify Inspection Scope ، تنظیمات را مرور کنید. گزینه هایی که در گفتگوی Specify Inspection Scope ظاهر می شوند بسته به اینکه پروژه، پوشه یا فایلی را انتخاب کرده اید متفاوت است: برای تغییر موارد بازرسی، یکی از دکمه های رادیویی دیگر را انتخاب کنید. برای توضیح تمام فیلدهای ممکن در گفتگوی Specify Inspection Scope، به گفتگوی Specify Inspection Scope مراجعه کنید. برای اجرای بازرسی روی OK کلیک کنید. شکل 4 لینت و سایر نتایج بازرسی IDE را از اجرای Inspect Code نشان می دهد: در قسمت Inspection Results ، با گسترش و انتخاب دستهها، انواع یا مسائل خطا، نتایج بازرسی را مشاهده کنید. پنجره Inspection Report گزارش بازرسی را برای دسته خطا، نوع یا مشکل انتخاب شده در پنجره Inspection Results نمایش می دهد و نام و محل خطا را نمایش می دهد. در صورت لزوم، گزارش بازرسی اطلاعات دیگری مانند خلاصه مشکل را نمایش میدهد تا به شما در رفع مشکل کمک کند. در نمای درختی پنجره Inspection Results ، روی یک دسته، نوع یا موضوع کلیک راست کنید تا منوی زمینه نمایش داده شود. بسته به زمینه، می توانید: برای توضیحات دکمههای نوار ابزار، آیتمهای منوی زمینه، و فیلدهای گزارش بازرسی، پنجره ابزار نتایج بازرسی را ببینید. از یکی از محدوده های سفارشی ارائه شده در Android Studio به شرح زیر استفاده کنید: برای نمایش گزینه های خود، روی لیست محدوده سفارشی کلیک کنید: اگر یک VCS برای پروژه پیکربندی شدهاید، گزینههایی برای محدود کردن جستجو فقط به فایلهایی که اصلاح شدهاند نیز وجود دارد. وقتی میخواهید مجموعهای از فایلها و دایرکتوریها را که توسط هیچ یک از حوزههای سفارشی موجود در حال حاضر پوشش داده نمیشوند، بررسی کنید، میتوانید یک محدوده سفارشی ایجاد کنید: روی سه نقطه بعد از لیست Custom Scope کلیک کنید. گفتگوی Scopes ظاهر می شود. هر دو حوزه محلی و اشتراکی در داخل پروژه برای ویژگی Inspect Code استفاده می شوند. یک Shared Scope همچنین میتواند با سایر ویژگیهای پروژه که دارای یک فیلد scope هستند استفاده شود. به عنوان مثال، وقتی روی ویرایش تنظیمات کلیک می کنید برای تغییر تنظیمات Find Usages ، گفتگوی حاصل دارای یک فیلد Scope است که در آن می توانید یک محدوده مشترک را انتخاب کنید. صفحه سمت راست گفتگوی Scopes با گزینه هایی پر می شود که به شما امکان می دهد محدوده سفارشی را تعریف کنید. لیستی از پروژه های موجود ظاهر می شود. توجه: می توانید محدوده سفارشی برای پروژه ها یا بسته ها ایجاد کنید. مراحل یکسان است. پوشه های پروژه را گسترش دهید، آنچه را که می خواهید به محدوده سفارشی اضافه کنید انتخاب کنید و انتخاب کنید که آیا شامل یا حذف شود. شکل 10 نشان می دهد که پوشه اصلی گنجانده شده است و پوشه های java و res به صورت بازگشتی گنجانده شده اند. آبی نشاندهنده یک پوشه تا حدی است و سبز نشاندهنده پوشهها و فایلهای حاوی بازگشتی است. اندروید استودیو مجموعهای از پرزها و دیگر پروفایلهای بازرسی دارد که از طریق بهروزرسانیهای اندروید بهروزرسانی میشوند. می توانید از این نمایه ها همانطور که هستند استفاده کنید یا نام، توضیحات، شدت و دامنه آنها را ویرایش کنید. همچنین میتوانید کل گروههای پروفایل یا پروفایلهای فردی را در یک گروه فعال و غیرفعال کنید. برای دسترسی به تنظیمات بازرسی : صفحه بازرسی لیستی از بازرسی های پشتیبانی شده و توضیحات آنها را نشان می دهد. برای جابهجایی بین بازرسیهای پیشفرض (اندروید استودیو) و پروژه پیشفرض (پروژه فعال)، فهرست نمایه را انتخاب کنید. برای اطلاعات بیشتر، به صفحه پروفایل های IntelliJ Manage مراجعه کنید. در فهرست Inspections در سمت چپ، یک دسته پروفایل سطح بالا را انتخاب کنید یا یک گروه را گسترش دهید و یک نمایه خاص را انتخاب کنید. هنگامی که یک دسته نمایه را انتخاب می کنید، می توانید تمام بازرسی های آن دسته را به عنوان یک بازرسی واحد ویرایش کنید.res
است: IconMissingDensityFolder
.enable
disable
یا ignore
informational
warning
error
fatal
lint.xml
مشخص کنید. اگر این فایل را به صورت دستی ایجاد می کنید، آن را در فهرست اصلی پروژه اندروید خود قرار دهید.lint.xml
از یک تگ والد <lint>
تشکیل شده است که حاوی یک یا چند عنصر <issue>
فرزند است. Lint یک مقدار مشخصه id
منحصر به فرد برای هر <issue>
تعریف می کند:<?xml version="1.0" encoding="UTF-8"?>
<lint>
<!-- list of issues to configure -->
</lint>
<issue>
تنظیم کنید.lint --list
اجرا کنید.lint.xml
را نشان می دهد: <?xml version="1.0" encoding="UTF-8"?>
<lint>
<!-- Disable the IconMissingDensityFolder check in this project -->
<issue id="IconMissingDensityFolder" severity="ignore" />
<!-- Ignore the ObsoleteLayoutParam issue in the specified files -->
<issue id="ObsoleteLayoutParam">
<ignore path="res/layout/activation.xml" />
<ignore path="res/layout-xlarge/activation.xml" />
</issue>
<!-- Ignore the UselessLeaf issue in the specified file -->
<issue id="UselessLeaf">
<ignore path="res/layout/main.xml" />
</issue>
<!-- Change the severity of hardcoded strings to "error" -->
<issue id="HardcodedText" severity="error" />
</lint>
IconMissingDensityFolder
به طور کامل غیرفعال است و بررسی ObsoleteLayoutParam
فقط در فایلهای مشخصشده در اعلانهای ضمیمه <ignore ... />
غیرفعال است.@SuppressLint
را به آن کد اضافه کنید.NewApi
در متد onCreate
خاموش کنید. ابزار lint به بررسی مشکل NewApi
در روشهای دیگر این کلاس ادامه میدهد. @SuppressLint("NewApi")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.main)
@SuppressLint("NewApi")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
NewApi
را در هر Composable غیرفعال کنید. @SuppressLint("NewApi")
@Composable
fun MyComposable{
...
}
ParserError
در کلاس FeedProvider
را نشان می دهد: @SuppressLint("ParserError")
class FeedProvider : ContentProvider() {
@SuppressLint("ParserError")
public class FeedProvider extends ContentProvider {
all
استفاده کنید: @SuppressLint("all")
@SuppressLint("all")
tools:ignore
برای غیرفعال کردن بررسی پرز برای بخش های خاصی از فایل های XML خود استفاده کنید. مقدار فضای نام زیر را در فایل lint.xml
قرار دهید تا ابزار lint ویژگی را بشناسد: namespace xmlns:tools="http://schemas.android.com/tools"
UnusedResources
در عنصر <LinearLayout>
از یک فایل طرح بندی XML غیرفعال کنید. خصیصه ignore
توسط عناصر فرزند عنصر والد به ارث می رسد که در آن ویژگی مشخص شده است. در این مثال، بررسی lint برای عنصر فرزند <TextView>
نیز غیرفعال است: <LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="UnusedResources" >
<TextView
android:text="@string/auto_update_prompt" />
</LinearLayout>
tools:ignore="NewApi,StringFormatInvalid"
all
استفاده کنید: tools:ignore="all"
lint{}
در فایل build.gradle
در سطح ماژول، برخی از گزینههای lint را پیکربندی کنید، مانند اینکه کدام چکها اجرا یا نادیده گرفته شوند.android {
...
lint {
// Turns off checks for the issue IDs you specify.
disable += "TypographyFractions" + "TypographyQuotes"
// Turns on checks for the issue IDs you specify. These checks are in
// addition to the default lint checks.
enable += "RtlHardcoded" + "RtlCompat" + "RtlEnabled"
// To enable checks for only a subset of issue IDs and ignore all others,
// list the issue IDs with the 'check' property instead. This property overrides
// any issue IDs you enable or disable using the properties above.
checkOnly += "NewApi" + "InlinedApi"
// If set to true, turns off analysis progress reporting by lint.
quiet = true
// If set to true (default), stops the build if errors are found.
abortOnError = false
// If set to true, lint only reports errors.
ignoreWarnings = true
// If set to true, lint also checks all dependencies as part of its analysis.
// Recommended for projects consisting of an app with library dependencies.
checkDependencies = true
}
}
...
android {
...
lint {
// Turns off checks for the issue IDs you specify.
disable 'TypographyFractions','TypographyQuotes'
// Turns on checks for the issue IDs you specify. These checks are in
// addition to the default lint checks.
enable 'RtlHardcoded','RtlCompat', 'RtlEnabled'
// To enable checks for only a subset of issue IDs and ignore all others,
// list the issue IDs with the 'check' property instead. This property overrides
// any issue IDs you enable or disable using the properties above.
checkOnly 'NewApi', 'InlinedApi'
// If set to true, turns off analysis progress reporting by lint.
quiet true
// If set to true (default), stops the build if errors are found.
abortOnError false
// If set to true, lint only reports errors.
ignoreWarnings true
// If set to true, lint also checks all dependencies as part of its analysis.
// Recommended for projects consisting of an app with library dependencies.
checkDependencies true
}
}
...
finalizeDsl()
غیرفعال کردن آن را در DSL اصلی لغو می کند.build.gradle
پروژه خود را به صورت زیر تغییر دهید: android {
lint {
baseline = file("lint-baseline.xml")
}
}
android {
lintOptions {
baseline file("lint-baseline.xml")
}
}
lint-baseline.xml
برای ایجاد خط پایه شما ایجاد می شود. از آن به بعد، ابزارها فقط فایل را می خوانند تا خط مبنا را تعیین کنند. اگر می خواهید یک خط پایه جدید ایجاد کنید، فایل را به صورت دستی حذف کنید و دوباره lint را اجرا کنید تا دوباره ایجاد شود.lint-baseline.xml
چاپ می کند. ممکن است مکان فایل برای تنظیم شما با آنچه در اینجا نشان داده شده است متفاوت باشد:
$ ./gradlew lintDebug -Dlint.baselines.continue=true
...
Wrote XML report to file:///app/lint-baseline.xml
Created baseline file /app/lint-baseline.xml
lint
تمام مشکلات جاری را در فایل lint-baseline.xml
ثبت می کند. به مجموعه مسائل جاری خط مبنا می گویند. اگر میخواهید آن را با دیگران به اشتراک بگذارید، میتوانید فایل lint-baseline.xml
در نسخه کنترل بررسی کنید.build.gradle
پروژه خود به صورت زیر اضافه کنید، مشخص کنید: android {
lint {
checkOnly += "NewApi" + "HandlerLeak"
baseline = file("lint-baseline.xml")
}
}
android {
lintOptions {
checkOnly 'NewApi', 'HandlerLeak'
baseline file("lint-baseline.xml")
}
}