كيفية تثبيت نسختي Debug و Release لنفس التطبيق جنباً إلى جنب في اندرويد
By هشام النحاس · نُشر في December 30, 2025
فصل نسختي التصحيح (Debug) والإطلاق (Release) في اندروبد
عند تطوير تطبيق اندرويد، عادة ما يقوم أمر flutter run باستبدال النسخة المثبتة حالياً من تطبيقك.
هذا الأمر مزعج إذا كنت ترغب في الاحتفاظ بنسخة "الإنتاج/Release" (التي تحتوي على بياناتك الحقيقية) أثناء
اختبار ميزات جديدة على نسخة "Debug".
عن طريق إضافة applicationIdSuffix (لاحقة لمعرف التطبيق) في إعدادات البناء،
سيتعامل نظام أندرويد مع نسخة Debug كتطبيق مختلف تماماً.
1. الفكرة الأساسية
نحتاج أن نخبر نظام Gradle بالآتي: "إذا كان نوع البناء هو Debug، قم بإضافة
.debug إلى اسم الحزمة."
المعرف الأصلي: hesham.hcody.az
معرف نسخة التصحيح: hesham.hcody.az.debug
2. باستخدام Kotlin DSL (`build.gradle.kts`)
إذا كان مشروعك يستخدم Kotlin DSL (المعيار الحديث)، استخدم الكود أدناه. هذا يطابق الكود الذي قدمته في سؤالك.
android {
// ... الإعدادات الحالية ...
defaultConfig {
applicationId = "hesham.hcody.az"
// ...
}
buildTypes {
getByName("debug") {
// يضيف لاحقة لمعرف التطبيق، مما ينشئ نسخة جديدة منفصلة
applicationIdSuffix = ".debug"
// اختياري: يغير اسم الإصدار لتمييزه بسهولة
versionNameSuffix = "-debug"
}
getByName("release") {
signingConfig = signingConfigs.getByName("release")
}
}
}
3. باستخدام Groovy DSL (`build.gradle`)
إذا كنت تستخدم صيغة Groovy القديمة، فالمنطق هو نفسه ولكن طريقة الكتابة تختلف قليلاً.
android {
// ... الإعدادات الحالية ...
defaultConfig {
applicationId "hesham.hcody.az"
// ...
}
buildTypes {
debug {
// لا نستخدم علامة '=' في Groovy لهذه الخصائص
applicationIdSuffix ".debug"
versionNameSuffix "-debug"
}
release {
// بافتراض أنك قمت بتعريف إعدادات التوقيع بالأعلى
signingConfig signingConfigs.release
}
}
}
الآن عند تشغيل التطبيق عبر Android Studio أو VS Code، سيتم تثبيت أيقونة منفصلة بجانب تطبيقك الأصلي دون مسح بياناته.