- راهنمای جامع گامبهگام برای توسعه، تبلیغات و انتشار بازی اندروید
- ابزارها و محیط توسعه پیشنهادی
- معماری پروژه و تنظیمات Gradle برای انتشار
- پیادهسازی تبلیغات گوگل موب (AdMob) — ادغام، انواع و نکات عملی
- CI/CD و انتشار خودکار (نمونه GitLab CI + Fastlane)
- زیرساخت برای بازیهای آنلاین و توزیع محتوا
- امنیت، نگهداری و رعایت حریم خصوصی
- بهینهسازی درآمد و استراتژیهای تجاری
- گامهای نهایی برای انتشار در گوگل پلی و راهاندازی درآمدزایی
- Praktische Tipps für DevOps-Teams und Netzwerkadministratoren
- Fazit und nächste Schritte
راهنمای جامع گامبهگام برای توسعه، تبلیغات و انتشار بازی اندروید
این راهنما فرایند کامل توسعه بازی اندروید تا ادغام تبلیغات AdMob، مدیریت امتیازات و انتشار AAB در گوگل پلی را بهصورت عملی و فنی پوشش میدهد. مخاطب این مطلب تیمهای توسعه، DevOps، مدیران محصول و مهندسان شبکه است که میخواهند از طراحی محلی و CI/CD تا زیرساختهای مقیاسپذیر و بهینهسازی درآمد را پیادهسازی کنند.
ابزارها و محیط توسعه پیشنهادی
ابزارها
- Android Studio (آخرین نسخه) با Gradle
- JDK 11 یا بالاتر
- Unity / Unreal یا سایر موتورهای بازی برای تجربههای 2D/3D
- Firebase (Analytics, Crashlytics, Remote Config)
- AdMob SDK برای تبلیغات
- Git / GitLab برای کنترل نسخه و CI/CD
نصب ابزارهای پایه روی سرور توسعه لینوکس (Ubuntu)
برای راهاندازی Runner یا سرور بیلد میتوانید از یک سرور ابری با دسترسی SSH استفاده کنید. نمونه دستورات زیر برای آمادهسازی پایه آورده شده است:
sudo apt update && sudo apt upgrade -y
sudo apt install openjdk-11-jdk git unzip wget -yنصب Android SDK (سریع)
دانلود command line tools، استخراج و نصب پکیجهای پایه:
wget https://dl.google.com/android/repository/commandlinetools-linux-xxxx_latest.zip
unzip commandlinetools-linux-xxxx_latest.zip -d $HOME/android-sdk
export ANDROID_SDK_ROOT=$HOME/android-sdk
$ANDROID_SDK_ROOT/cmdline-tools/bin/sdkmanager --sdk_root=$ANDROID_SDK_ROOT "platform-tools" "platforms;android-33" "build-tools;33.0.2"معماری پروژه و تنظیمات Gradle برای انتشار
In der Datei app/build.gradle باید signingConfig برای release تعریف شود و minifyEnabled همراه با ProGuard/R8 برای فشردهسازی و obfuscation فعال شود. نمونه پیکربندی signingConfig:
signingConfigs {
release {
storeFile file(System.getenv("KEYSTORE_PATH"))
storePassword System.getenv("KEYSTORE_PASSWORD")
keyAlias System.getenv("KEY_ALIAS")
keyPassword System.getenv("KEY_PASSWORD")
}
}
buildTypes {
release {
signingConfig signingConfigs.release
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}تولید keystore (دستور)
برای تولید keystore محلی از دستور زیر استفاده کنید (مثال):
keytool -genkey -v -keystore release.keystore -alias my_app_alias -keyalg RSA -keysize 2048 -validity 10000پیادهسازی تبلیغات گوگل موب (AdMob) — ادغام، انواع و نکات عملی
راهاندازی AdMob
- ایجاد حساب AdMob و افزودن اپ با package name.
- دریافت App ID و Ad unit IDs (banner, interstitial, rewarded).
- اضافه کردن dependency در Gradle:
implementation ‘com.google.android.gms:play-services-ads:22.0.0’ (نسخه نمونه — از نسخه جدیدتر استفاده کنید)
نمونه کد ساده برای بارگذاری بنر (Activity)
MobileAds.initialize(this) { }
val adView = AdView(this)
adView.adUnitId = "ca-app-pub-xxx/yyy"
adView.adSize = AdSize.BANNER
adView.loadAd(AdRequest.Builder().build())انواع تبلیغات و استراتژی درآمدزایی
- Banner: کمترین درآمد، مناسب برای UI غیرتهاجمی.
- Interstitial: بین مراحل یا صفحات، نرخ تبدیل بالاتر.
- Rewarded Video: بهترین برای درآمد و نگهداشت کاربر — کاربر پس از تماشا پاداش دریافت میکند.
- Native Ads: ادغام ظاهری با UX بازی و نرخ CTR بهتر.
توصیه: از Rewarded Und Interstitial بهصورت بهینه استفاده کنید؛ فرکانس و چیدمان را با Firebase Remote Config یا A/B testing آزمایش کنید.
قوانین، تست و سیاستها
- همیشه از test ads هنگام توسعه استفاده کنید.
- رعایت سیاستهای AdMob و Play Store (محتوا، click-spam، COPPA و GDPR) الزامی است.
- برای کاربران اروپایی از Consent SDK و پیروی از GDPR اطمینان حاصل کنید.
CI/CD و انتشار خودکار (نمونه GitLab CI + Fastlane)
چرا CI/CD؟
CI/CD امکان کامپایل خودکار، تست، obfuscation، امضای امن و انتشار به کانالهای مختلف (پایلوت، بتا، production) را فراهم میکند. میتوانید از GitLab Hosted Runners یا نصب GitLab Runner روی سرور ابری با لوکیشن مناسب برای کاهش تأخیر استفاده کنید.
نمونه .gitlab-ci.yml ساده
image: ubuntu:20.04
stages:
- build
- test
- release
before_script:
- apt update && apt install -y openjdk-11-jdk unzip wget
- wget https://dl.google.com/android/repository/commandlinetools-linux-xxxx_latest.zip -O cmdline.zip
- unzip cmdline.zip -d $CI_PROJECT_DIR/android-sdk
- export ANDROID_SDK_ROOT=$CI_PROJECT_DIR/android-sdk
- yes | $ANDROID_SDK_ROOT/cmdline-tools/bin/sdkmanager --sdk_root=$ANDROID_SDK_ROOT "platform-tools" "build-tools;33.0.2" "platforms;android-33"
build:
stage: build
script:
- ./gradlew assembleRelease -Pandroid.injected.signing.store.file=$KEYSTORE_PATH -Pandroid.injected.signing.store.password=$KEYSTORE_PASSWORD
artifacts:
paths:
- app/build/outputs/Fastlane برای انتشار خودکار به Google Play
نمونه دستور Fastlane برای آپلود AAB به track دلخواه:
fastlane supply --aab app-release.aab --json_key /path/to/service-account.json --track betaزیرساخت برای بازیهای آنلاین و توزیع محتوا
انتخاب لوکیشن سرورها
برای بازیهای مولتیپلیر و پینگ پایین، انتخاب لوکیشن اهمیت حیاتی دارد. داشتن بیش از 85 Standorte weltweit امکان قرار دادن سرورها نزدیک مخاطبان هدف (آمریکا، اروپا، آسیای جنوبشرقی، ژاپن، استرالیا، خاورمیانه) را میدهد تا پینگ و لگ کاهش یابد.
انواع سرورها و پیشنهادات
- Gaming-VPS: مناسب سرورهای کوچک تا متوسط با پیکربندی شبکه اختصاصی.
- Hochleistungs-Cloud-Server: مقیاسپذیری، auto-scaling و load balancing.
- سرور گرافیکی (GPU): برای رندرینگ داراییها، آموزش مدلهای ML یا تولید تریلر و انیمیشن.
- Anti-DDoS-Server: محافظت از سرورهای real-time (UDP/TCP).
- دیتابیس مدیریتشده و Redis: برای وضعیت بازی و leaderboards.
CDN و BGP
برای توزیع فایلهای سنگین (apk/aab، assets، پچها) از CDN استفاده کنید تا زمان دانلود و latency کاهش یابد. Anycast/BGP و POPهای متعدد به توزیع ترافیک و افزایش در دسترسپذیری کمک میکنند.
نمونه کانفیگ سرور بازی (Ubuntu) — نصب Nginx برای کش محلی
برای کش محتوای استاتیک و توزیع فایلهای patch میتوانید Nginx را نصب و پیکربندی کنید:
sudo apt install nginx -y
# configure nginx for static cache and patch distribution as neededدر صورت نیاز به UDP/STUN/TURN از سرورهای اختصاصی برای match-making استفاده کنید.
امنیت، نگهداری و رعایت حریم خصوصی
امنیت اپ و بکاند
- ذخیره امن keystore و فایلهای JSON در Secret Manager یا Vault.
- استفاده از HTTPS/TLS برای تمام ارتباطات شبکهای.
- جلوگیری از reverse engineering با Obfuscation (R8/ProGuard) و جلوگیری از hard-code کردن API keys.
- محدودسازی نرخ درخواستها، WAF و تنظیمات ضد DDoS برای سرورها.
همیشه کلیدها و اطلاعات حساس را در مکانهای امن (Secret Manager / Vault) نگهداری کنید و از ذخیره آنها در مخزن کد خودداری نمایید.
مانیتورینگ و Crash Reporting
- Firebase Crashlytics برای گزارش خطاها
- Prometheus + Grafana برای مانیتورینگ سرورها و متریکها
- Alerting برای uptime و spikes در ترافیک (مهم برای لانچ و کمپینهای تبلیغاتی)
بهینهسازی درآمد و استراتژیهای تجاری
ادغام AdMob و IAP
ترکیب تبلیغات Rewarded با In-App Purchases بهترین راه برای افزایش درآمد است. کاربران میتوانند با پرداخت اشتراک تبلیغات را حذف کنند یا با تماشای ویدئو درون بازی پاداش دریافت نمایند.
Mediation و افزایش eCPM
Verwendung von mediation باعث افزایش Fill Rate و eCPM میشود (AdMob mediation یا پلتفرمهای دیگر).
A/B Testing و Remote Config
با استفاده از Firebase Remote Config و اجرای A/B testing میتوانید نرخ نمایش تبلیغات، میزان پاداش و تجربه کاربری را بدون انتشار نسخه جدید بهسرعت تنظیم کنید.
گامهای نهایی برای انتشار در گوگل پلی و راهاندازی درآمدزایی
تنظیم Google Play Console
- ایجاد اپ در Google Play Console و تکمیل متادیتا (عنوان، توضیحات، تصاویر، ویدئو).
- بارگذاری AAB (Google Play bundle پیشنهاد میشود).
- پیکربندی pricing & distribution و کشورهای هدف.
- تعریف محصولات درونبرنامهای (IAP) و اتصال Billing Library.
- فعال کردن App Signing by Google Play و نگهداری public key در صورت نیاز.
چکلیست قبل از انتشار
- تست کامل روی دستگاههای واقعی و استفاده از test ad IDs.
- بررسی سیاستهای AdMob و Play (حریم خصوصی، COPPA).
- تهیه Privacy Policy و قرار دادن لینک آن در صفحه Store.
- راهاندازی Crashlytics و Analytics قبل از ریلیز.
- انجام rollout مرحلهای (internal → closed → production) برای کاهش ریسک.
Praktische Tipps für DevOps-Teams und Netzwerkadministratoren
- راهاندازی GitLab Runner روی سرور ابری با لوکیشن نزدیک برای کاهش تاخیر دانلود SDK و dependencyها.
- استفاده از تصاویر Docker حاوی Android SDK برای ساختهای پایدار.
- بهرهگیری از سرورهای GPU برای رندرینگ داراییها یا مدلهای AI.
- استفاده از CDN و شبکههای با بیش از 85 لوکیشن برای توزیع پچها با کمترین لگ و هزینه ترافیک.
Fazit und nächste Schritte
ساخت بازی اندروید و راهاندازی درآمدزایی با AdMob نیازمند هماهنگی بین توسعه، CI/CD، امنیت و زیرساخت است. با انتخاب مناسب لوکیشن سرورها، استفاده از VPS گیم، سرورهای ابری مقیاسپذیر، CDN و GPU میتوانید تجربه کاربری بهتر و درآمد بالاتری بهدست آورید.
در صورت تمایل به بررسی پلنهای میزبانی، سرورهای GPU یا دریافت مشاوره فنی برای راهاندازی CI/CD و GitLab Runner اختصاصی، میتوانید با تیم فروش و پشتیبانی تماس بگیرید تا شرایط و راهکارهای مناسب پروژه شما بررسی شود.









