اگر نسخههای مختلفی از برنامه خود را بر اساس انواع مختلف ساخت دارید، برای هر نوع، قوانین Keep سفارشی ایجاد کنید. به عنوان مثال، اگر یک سطح رایگان و یک سطح پولی از برنامه خود با ویژگیها و وابستگیهای مختلف دارید، هر سطح باید قوانین Keep مخصوص به خود را داشته باشد.
ایجاد قوانین Keep
برای ایجاد قوانین keep که مختص یک نوع ساخت هستند، ویژگی proguardFiles را در بلوک flavor مربوطه در زیر productFlavors اضافه کنید. برای مثال، اسکریپت ساخت زیر فایل قوانین flavor2‑rules.pro را به flavor2 product flavor اضافه میکند:
کاتلین
android {
...
buildTypes {
getByName("release") {
isMinifyEnabled = true
isShrinkResources = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
flavorDimensions.add("version")
productFlavors {
create("flavor1") {
...
}
create("flavor2") {
proguardFile("flavor2-rules.pro")
}
}
}
گرووی
android {
...
buildTypes {
release {
minifyEnabled = true
shrinkResources = true
proguardFiles
getDefaultProguardFile('proguard-android-optimize.txt'),
'proguard-rules.pro'
}
}
flavorDimensions "version"
productFlavors {
flavor1 {
...
}
flavor2 {
proguardFile 'flavor2-rules.pro'
}
}
}
منابع اضافی
- سفارشیسازی منابعی که باید نگه داشته شوند — یاد بگیرید که چگونه قوانین keep را برای منابع اضافه کنید.