đ§ Flavors (Product Flavors) āϏāĻšāĻ āĻাāώাāϝ় āĻŦ্āϝাāĻ্āϝা!
đ§ Flavors (Product Flavors) āϏāĻšāĻ āĻাāώাāϝ় āĻŦ্āϝাāĻ্āϝা!
đ Flavors āĻী?
đ Flavors (Product Flavors) āĻšāϞো āĻāĻāĻ āĻ
্āϝাāĻĒেāϰ āĻŦিāĻিāύ্āύ āĻাāϰ্āϏāύ āϤৈāϰি āĻāϰাāϰ āϏāĻšāĻ āĻāĻĒাāϝ়!
đ āĻāĻি Gradle Build System-āĻāϰ āĻāĻāĻি āĻĢিāĻাāϰ, āϝা āĻāĻĒāύাāĻে āĻāĻāĻি āĻোāĻĄāĻŦেāϏ āĻĨেāĻে āĻāϞাāĻĻা āĻāϞাāĻĻা āĻ
্āϝাāĻĒ āĻŦাāύাāϤে āϏাāĻšাāϝ্āϝ āĻāϰে! đ
đĨ āĻŦাāϏ্āϤāĻŦ āĻāĻĻাāĻšāϰāĻŖ: Free vs. Paid āĻ ্āϝাāĻĒ
đ āϧāϰুāύ, āĻāĻĒāύি "Business Minds" āύাāĻŽেāϰ āĻāĻāĻি āĻ
্āϝাāĻĒ āĻŦাāύিā§েāĻেāύ।
đ āĻāĻĒāύি āĻাāύ:
✅ Free Version: āϝেāĻাāύে Ad āĻĨাāĻāĻŦে āĻāĻŦং āĻিāĻু āĻĢিāĻাāϰ āϞিāĻŽিāĻেāĻĄ āĻĨাāĻāĻŦে।
✅ Paid Version: āϝেāĻাāύে Ad āĻĨাāĻāĻŦে āύা āĻāĻŦং āϏāĻŦ āĻĢিāĻাāϰ āĻāύāϞāĻ āĻĨাāĻāĻŦে।
đ¯ āĻāĻāύ āĻি āĻāĻĒāύাāĻে āĻĻুāĻāĻŦাāϰ āĻোāĻĄ āϞিāĻāϤে āĻšāĻŦে? āύা! Product Flavors āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāϞেāĻ āĻšāĻŦে! đ
✅ āĻিāĻাāĻŦে Flavors āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāĻŦেāύ?
Step 1: Flavors Define āĻāϰুāύ
đ build.gradle.kts (Module: app) āĻĢাāĻāϞেāϰ android {} āϏেāĻāĻļāύে āĻāĻি āϞিāĻুāύ:
android {
flavorDimensions += "version"
productFlavors {
free {
dimension = "version"
applicationIdSuffix = ".free"
versionNameSuffix = "-free"
}
paid {
dimension = "version"
applicationIdSuffix = ".paid"
versionNameSuffix = "-paid"
}
}
}
✅ Flavors āĻী āĻāϰāĻে?
đ "flavorDimensions" → āĻāĻি Flavors-āĻে āĻ্āϰুāĻĒ āĻāϰে। (āĻāĻĒāύাāϰ āĻāĻāĻি āĻ
্āϝাāĻĒে āĻāĻাāϧিāĻ Dimension āĻĨাāĻāϤে āĻĒাāϰে)
đ "applicationIdSuffix" → Free āĻāĻŦং Paid āĻাāϰ্āϏāύেāϰ Package Name āĻāϞাāĻĻা āĻšāĻŦে!
đ "versionNameSuffix" → Free āĻāĻŦং Paid āĻাāϰ্āϏāύেāϰ Version Name āĻāϞাāĻĻা āĻšāĻŦে!
✅ āĻāĻāύ āĻāĻĒāύাāϰ āĻ ্āϝাāĻĒে āĻĻুāĻāĻা āĻāϞাāĻĻা APK āĻĨাāĻāĻŦে:
com.yourapp.free(Free Version)com.yourapp.paid(Paid Version)
đ āĻāĻāĻ āĻোāĻĄāĻŦেāϏ āĻĨেāĻে āĻĻুāĻāĻা āĻāϞাāĻĻা āĻ ্āϝাāĻĒ āϤৈāϰি! đ
✅ Flavors āĻ āύুāϝাāϝ়ী āĻāϞাāĻĻা Resource āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰা
đ¯ āĻāĻĒāύি āĻাāύ Free āĻāĻŦং Paid āĻাāϰ্āϏāύে āĻāϞাāĻĻা āĻāϞাāĻĻা Logo, Layout āĻŦা String āĻĨাāĻুāĻ?
đ Free āĻাāϰ্āϏāύেāϰ āĻāύ্āϝ:
đ src/free/res/drawable/logo.png
đ Paid āĻাāϰ্āϏāύেāϰ āĻāύ্āϝ:
đ src/paid/res/drawable/logo.png
✅ āĻāĻāύ Gradle āĻŦুāĻāϤে āĻĒাāϰāĻŦে āĻোāύ Flavor-āĻāϰ āĻāύ্āϝ āĻোāύ Resource āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāϤে āĻšāĻŦে! đ¯
đĨ āĻŦাāϏ্āϤāĻŦ āĻāĻĻাāĻšāϰāĻŖ ⧍: āĻāϞাāĻĻা API āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰা
đ āĻāĻĒāύি āĻাāύ Free āĻাāϰ্āϏāύ āĻāϞাāĻĻা API āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰুāĻ, āĻāϰ Paid āĻাāϰ্āϏāύ āĻāϞাāĻĻা API!
đ Step 1: āĻāϞাāĻĻা Java/Kotlin āĻোāĻĄ āϞিāĻুāύ
đ src/free/java/com/yourapp/ApiConfig.java
public class ApiConfig {
public static final String BASE_URL = "https://api.free-version.com";
}
đ src/paid/java/com/yourapp/ApiConfig.java
public class ApiConfig {
public static final String BASE_URL = "https://api.paid-version.com";
}
✅ āĻāĻāύ Free āĻāĻŦং Paid āĻাāϰ্āϏāύেāϰ āĻāύ্āϝ āĻāϞাāĻĻা API āĻāϞāĻŦে! đ
đĨ āĻāϰāĻ āĻিāĻু āĻĻাāϰুāĻŖ āĻŦ্āϝāĻŦāĻšাāϰ:
✅ Demo & Full Version: āĻĄেāĻŽো āĻাāϰ্āϏāύে āĻিāĻু āĻĢিāĻাāϰ āϞāĻ āĻāϰে āϰাāĻা āϝাā§!
✅ Ad vs. No-Ad Version: āĻĢ্āϰি āĻাāϰ্āϏāύে Ad āĻĨাāĻāĻŦে, Paid āĻাāϰ্āϏāύে āĻĨাāĻāĻŦে āύা!
✅ Different Server URLs: āĻāϞাāĻĻা Server āĻŦা API āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰা āϝাā§!
✅ Enterprise vs. Consumer App: āĻāĻāĻ āĻ
্āϝাāĻĒেāϰ āĻĻুāĻāĻা āĻāϞাāĻĻা Version āĻাāϞাāύো āϝাā§!
⚠️ āϏāϤāϰ্āĻāϤা!
đ¨ Flavors āĻļুāϧুāĻŽাāϤ্āϰ Build Time-āĻ āĻাāĻ āĻāϰে! Runtime-āĻ āĻāĻি āĻেāĻ্āĻ āĻāϰা āϝাā§ āύা!
đ¨ āĻāĻĒāύাāϰ āϝāĻĻি āĻāĻāĻ āĻĢিāĻাāϰ āĻিāύ্āϤু āĻāϞাāĻĻা UI āĻĻāϰāĻাāϰ āĻšā§, āϤাāĻšāϞে Flavors āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāϤে āĻĒাāϰেāύ!
đ¨ Flavors āĻāϞাāĻĻা APK āϤৈāϰি āĻāϰে, āϤাāĻ Play Store-āĻ āĻāϞাāĻĻা āĻāϞাāĻĻা Build āĻāĻĒāϞোāĻĄ āĻāϰāϤে āĻĒাāϰāĻŦেāύ!
✅ āϏংāĻ্āώেāĻĒে:
- Product Flavors āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰে āĻāĻāĻ āĻ ্āϝাāĻĒেāϰ āĻিāύ্āύ āĻিāύ্āύ āĻাāϰ্āϏāύ āϤৈāϰি āĻāϰা āϝাā§!
- Free vs. Paid, Demo vs. Full, Ad vs. No-Ad āĻāϞাāĻĻা āĻāϞাāĻĻা āĻাāĻŦে āϤৈāϰি āĻāϰা āϏāĻŽ্āĻāĻŦ!
- Resource, Package Name, API, UI āĻāϞাāĻĻা āĻāϰা āϝাā§!
- Gradle Build System āϏ্āĻŦā§ংāĻ্āϰিā§āĻাāĻŦে Flavors āĻ āύুāϝাā§ী āϏāĻŦ āĻিāĻু āϏেāĻ āĻāϰে āĻĻেā§!
đ¤ āĻŦুāĻāϤে āϏāĻŽāϏ্āϝা āĻšāϞে āĻŦāϞুāύ!
āĻāĻŽি āĻāϰāĻ āϏāĻšāĻ āĻāϰে āĻŦ্āϝাāĻ্āϝা āĻāϰāϤে āĻĒাāϰি! đ
Comments
Post a Comment