راهنمای جامع انتشار برنامه و بازی در گوگل پلی استور (از صفر تا انتشار)
این راهنما فرایندهای گامبهگام ساخت یک برنامه مدرن اندروید (بهویژه پروژههای NET MAUI.، MonoGame یا پروژههای ترکیبی #C) از ابتدا در Google Play Console، بستهبندی، امضا، رفع خطاهای بحرانی و تکمیل مراحل ثبت فروشگاه (ایجاد برنامه، سیاست حریم خصوصی، دسترسی به برنامه، تبلیغات، ردهبندی سنی IARC، امنیت دادهها، تست بسته و انتشار عمومی نهایی) را بهطور دقیق توضیح میدهد.
فهرست مطالب
- مقدمه و آمادهسازی معماری
- ایجاد یک برنامه یا بازی جدید از صفر در Play Console (Create App)
- ساخت Keystore و اتوماسیون بیلد و امضا (Build/Sign)
- بارگذاری اولین بسته در Play Console و خطاهای بحرانی
- آمادهسازی سیاست حفظ حریم خصوصی (Privacy Policy)
- دسترسی به برنامه و اطلاعات ورود (App Access / Sign-in Details)
- بیانیه تبلیغات (Ads Declaration)
- ردهبندی سنی و محتوا (پرسشنامه IARC)
- مخاطبان هدف و گروههای سنی (Target Audience)
- داشبورد محتوای برنامه (App Content Dashboard)
- فرم امنیت دادهها (Data Safety Form)
- بیانیههای قانونی و مقرراتی (دولتی، مالی، سلامت)
- تنظیمات فروشگاه و اطلاعات تماس (Store Settings)
- صفحه اصلی فروشگاه و داراییهای بصری (Main Store Listing)
- راهاندازی و بررسی تست بسته (Closed Testing Setup and Review)
- بیانیه شناسه تبلیغاتی (Advertising ID Declaration)
- ارسال نهایی برای بررسی (Final Submission)
- درخواست مجوز انتشار عمومی پس از تست بسته (Apply for Production)
- پیروزی نهایی: تأیید دسترسی به نسخه تولید (Production Access)
- چکلیست پیش از انتشار (تکمیلشده)
- استودیو Arar Games و بازیهای ما
1. مقدمه و آمادهسازی معماری
هنگام انتشار یک برنامه جدید در گوگل پلی استور، رعایت آخرین سیاستهای فنی و امنیتی گوگل ضروری است:
- فرمت بسته: تنها فرمت
aab.(Android App Bundle) پذیرفته میشود. فایلهای APK برای انتشار مستقیم در فروشگاه معتبر نیستند (اگرچه میتوانند برای تستهای sideload ایجاد شوند). - حداقل Target SDK: گوگل پلی الزامی کرده است که برنامههای جدید یا بهروزرسانیشده حداقل سطح Android API Level 36 (Android 16) را هدف قرار دهند.
- امضای امن: برنامه باید با یک کلید RSA معتبر ۲۰۴۸ بیتی سازگار با طرحهای امضای v2/v3 امضا شود.
2. ایجاد یک برنامه یا بازی جدید از صفر در Play Console (Create App)
پس از ورود به پنل Google Play Console به آدرس (play.google.com/console)، فرایند انتشار با کلیک روی دکمه آبیرنگ "Create app" در بالای صفحه اصلی آغاز میشود. این فرم، هویت دیجیتال برنامه، نام پکیج و دستهبندی اولیه در فروشگاه را مشخص میکند.
الف. جزئیات برنامه (App Details)
- App Name (نام برنامه):
- اولین نام رسمی برنامه است که به کاربران در فروشگاه نمایش داده میشود.
- محدود به حداکثر ۳۰ کاراکتر (مثال:
YourAppName). - توصیه: از کلمات گمراهکننده، تبلیغاتی یا پر کردن غیرضروری کلمات کلیدی مانند "Best", "Free", "#1" در عنوان خودداری کنید؛ در غیر این صورت در بررسی گوگل پلی رد خواهد شد.
- Package Name (نام بسته):
- شناسه بسته جاوا/اندروید که برنامه شما را بهطور منحصربهفرد در اکوسیستم اندروید مشخص میکند (الگوی دامنه معکوس، به عنوان مثال
com.yourcompany.appname). - حداکثر ۱۵۰ کاراکتر.
- ⚠️ قاعده حیاتی: پس از ایجاد برنامه در این صفحه و بارگذاری اولین بسته، نام پکیج دیگر هرگز قابل تغییر نیست! این مقدار باید با
ApplicationId(<ApplicationId>com.yourcompany.appname</ApplicationId>) در فایلAndroidManifest.xmlیکسان باشد. Check availability(بررسی در دسترس بودن): با کلیک روی این دکمه، فوراً بررسی میشود که آیا این نام بسته قبلاً توسط توسعهدهنده دیگری ثبت شده است یا خیر.
- شناسه بسته جاوا/اندروید که برنامه شما را بهطور منحصربهفرد در اکوسیستم اندروید مشخص میکند (الگوی دامنه معکوس، به عنوان مثال
- Default Language (زبان پیشفرض):
- زبان اصلی صفحه فروشگاه برنامه (مثال:
English (United States) – en-US). - اطلاعات فروشگاه در تمام کشورهایی که ترجمه اختصاصی برای آنها تعریف نشده است، به این زبان پیشفرض نمایش داده میشود.
- زبان اصلی صفحه فروشگاه برنامه (مثال:
ب. نوع برنامه، قیمتگذاری و بیانیهها
- App or Game (برنامه یا بازی):
- نوع اصلی محصول را تعیین میکند (
AppیاGame). - نکته مهم: این انتخاب تب اصلی فروشگاه (بخش برنامهها یا بازیها) را مشخص کرده و بعداً قابل تغییر نیست.
- نوع اصلی محصول را تعیین میکند (
- Free or Paid (رایگان یا پولی):
- مشخص میکند که برنامه رایگان عرضه میشود یا خرید نقدی دارد.
- ⚠️ قاعده غیرقابل بازگشت: بر اساس قوانین گوگل پلی، برنامهای که یک بار به صورت رایگان ("Free") منتشر شود، هرگز نمیتواند در آینده به پولی ("Paid") تبدیل شود! اگر میخواهید برنامه را بفروشید، باید از ابتدا
Paidرا انتخاب کنید. برای کسب درآمد از برنامه رایگان، باید از پرداخت درونبرنامهای یا تبلیغات استفاده نمایید.
- Automatic Protection (محافظت خودکار):
- گوگل پلی محافظت و بررسی خودکار نصبکننده (installer check) را به کد APK/AAB برنامه شما اضافه میکند تا در صورت بارگیری غیرمجاز برنامه از خارج گوگل پلی، به کاربران هشدار دهد.
- Declarations (بیانیههای قانونی و سیاستها):
- Developer Program Policies: تأیید میکند که برنامه بهطور کامل با سیاستهای محتوایی توسعهدهندگان گوگل پلی مطابقت دارد.
- US Export Laws: تأیید میکند که نرمافزار با قوانین صادرات ایالات متحده و مقررات تحریم سازگار است.
- Create App (ایجاد برنامه):
- پس از تأیید، روی دکمه آبی "Create app" در پایین صفحه کلیک کنید تا وارد پنل مدیریت اصلی برنامه (Dashboard) شوید.
3. ساخت Keystore و اتوماسیون بیلد و امضا (Build/Sign)
برای اینکه فرایند استقرار و انتشار بدون خطا و تکرارپذیر باشد، پیشنهاد میشود پوشه Deploy/ و اسکریپتهای اتوماسیون را در ریشه پروژه ایجاد کنید.
الف. تولید Keystore با اسکریپت (1_CreateKeystore.bat)
با استفاده از ابزار keytool موجود در JDK، یک کلید با اعتبار ۲۵ سال (۱۰,۰۰۰ روز) تولید میشود:
keytool -genkeypair -v ^
-keystore "%KEYSTORE_PATH%" ^
-alias %ALIAS% ^
-keyalg RSA ^
-keysize 2048 ^
-validity 10000 ^
-storepass "%PASS%" ^
-keypass "%PASS%" ^
-dname "CN=SirketAdi, OU=Apps, O=SirketAdi, C=TR"
نکته: استفاده از پرانتز در بلوکهای
if (...)هنگام دریافت رمز عبور باset /pدر فایلهای بچ ویندوز ممکن است باعث خطای نحوی (: was unexpected at this time) شود. مدیریت جریان با برچسبهایgotoو قرار دادن متغیرها در گیومه"%PASS%"ثبات فرایند را تضمین میکند.
ب. نسخهگذاری خودکار و تولید AAB امضا شده (2_BuildAndSign_AAB.bat)
گوگل پلی انتظار دارد که versionCode با هر بهروزرسانی بهصورت اکیداً صعودی افزایش یابد. برای اتوماسیون این کار، فرمولی بر اساس تاریخ و زمان ایجاد شده است:
# رقم آخر سال + ماه + روز + ساعت + دقیقه (مثال: 02:42 2026-10-06 -> 610060242)
$vc = (Get-Date).ToString('yy').Substring(1) + (Get-Date).ToString('MMddHHmm')
دستورات کامپایل و امضا:
dotnet build "Proje.Android.csproj" -c Release -f net9.0-android /p:AndroidPackageFormat=aab /p:ApplicationVersion=%VERSION_CODE% /p:ApplicationDisplayVersion=%VERSION_NAME%
jarsigner -sigalg SHA256withRSA -digestalg SHA-256 ^
-keystore "%KEYSTORE%" ^
-storepass "%PASS%" ^
-keypass "%PASS%" ^
-signedjar "%SIGNED_FILE%" ^
"%AAB_INPUT%" ^
%ALIAS%
پس از اتمام فرایند، پوشه حاوی فایل کامپایلشده مستقیماً در Windows Explorer با دستور start "" "%OUTPUT%" باز میشود.
4. بارگذاری اولین بسته در Play Console و خطاهای بحرانی
هنگامی که فایل امضاشده aab. در کانال Internal testing یا Production در Google Play Console آپلود میشود، ممکن است صفحه زیر مشاهده شود:
خطای ۱: الزام به هدفگذاری API Level 36 (Android 16)
پیام خطا: "Your app currently targets API level 35 and must target at least API level 36 to ensure it is built on the latest APIs optimized for security and performance."
راهحل:
این خطا مانع انتشار است و تا زمان رفع آن نمیتوان نسخه را ثبت کرد.
- تگ
<uses-sdk>را در فایلPlatforms/Android/AndroidManifest.xmlبهطور صریح تعریف کنید:
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.yourcompany.appname">
<uses-sdk android:minSdkVersion="24" android:targetSdkVersion="36" />
...
</manifest>
- آن را به
<PropertyGroup>در فایلcsproj.پروژه اضافه کنید:
<AndroidTargetSdkVersion>36</AndroidTargetSdkVersion>
خطای ۲: هشدار جهش زیاد Version Code
پیام هشدار:
"This release's version code is significantly higher than your previous version code. Over time, this will result in your app reaching the maximum limit for version codes... Learn more"
راهحل:
- گوگل پلی هنگامی که شماره نسخه قبلی عدد کوچکی بوده (مثلاً ۱ یا ۸) و سپس به فرمت تاریخ پویا (مثلاً ۶۱۰ میلیون) جهش میکند، این هشدار را نشان میدهد.
- این یک خطای مسدودکننده نیست. میتوان با کلیک روی دکمه آبیرنگ
Proceed anywayکه در زیر هشدار قرار دارد، آن را رد کرد. - از آنجا که این عدد پایه آپلودهای بعدی قرار میگیرد، این هشدار مجدداً نشان داده نخواهد شد.
5. آمادهسازی سیاست حفظ حریم خصوصی (Privacy Policy)
بر اساس قوانین گوگل پلی، حتی اگر برنامه شما دادههای حساسی جمعآوری نکند، لینک سیاست حفظ حریم خصوصی باید در قالب یک صفحه وب استاندارد (نه فایل PDF) با SSL فعال و دسترسی عمومی ارائه شود.
میزبانی رایگان در GitHub
یک فایل markdown (.../blob/main) در مخزن گیتهاب توسط گوگل مستقیماً به عنوان یک صفحه وب معتبر شناسایی میشود.
سرفصلهای اساسی که باید در سیاست حریم خصوصی گنجانده شوند:
- تبلیغات (Google AdMob): تبلیغات بنری، بینابینی و پاداشی؛ استفاده از شناسه تبلیغاتی اندروید (
AD_ID)، دادههای فنی دستگاه و موقعیت مکانی تقریبی IP. - خریدهای درونبرنامهای و اشتراکها (Google Play Billing): پرداختها کاملاً در زیرساخت گوگل انجام میشوند و توسعهدهنده هرگز به کارت یا اطلاعات صورتحساب دسترسی ندارد.
- تحلیل و تلهمتری (Firebase Analytics & Crashlytics): رخدادهای ناشناس و گزارشهای خرابی برنامه.
- مدیریت رضایت کاربران (Google UMP): پنجرههای رضایت مطابق با قوانین GDPR و حریم خصوصی و امکان تغییر اولویتها از طریق تنظیمات برنامه.
- سلب مسئولیتهای قانونی و بیانیههای ویژه (بهعنوان مثال، ابزارهای پیشبینی یا شانس):
- برنامه بههیچوجه پلتفرم شرطبندی یا قمار نیست.
- فقط بهینهسازی فرمولهای آماری و ریاضی را ارائه میدهد.
- در صورت هدایت به منابع رسمی، نام کاربری و رمزهای عبور کاربران ذخیره نمیشوند و تأیید هویت مستقیماً در رابط رسمی انجام میگیرد.
- نکته امنیتی: لینکهای شخصی مثل پروفایل گیتهاب توسعهدهنده نباید در سیاست حفظ حریم خصوصی قرار گیرند؛ تنها ایمیل رسمی پشتیبانی و وبسایت شرکتی باید ذکر شوند.
6. دسترسی به برنامه و اطلاعات ورود (App Access / Sign-in Details)
پیش از آنکه ارزیابهای گوگل بتوانند برنامه را بررسی کنند، باید اعلام کنید که آیا بخشهای برنامه نیاز به ورود دارند یا خیر:
- انتخاب:
No(هیچ بخشی از برنامه دارای محدودیت نیست). - توضیح: اگر در برنامه ثبتنام، ورود کاربر، رمز عبور یا صفحه قفلشده وجود ندارد، گزینه
Noرا انتخاب کنید. اگرYesانتخاب شود، گوگل اطلاعات کاربری آزمایشی را درخواست خواهد کرد.
7. بیانیه تبلیغات (Ads Declaration)
در این مرحله باید مشخص کنید که آیا در برنامه تبلیغات نمایش داده میشود یا خیر:
- انتخاب:
Yes, my app contains ads(بله، برنامه من حاوی تبلیغات است). - توضیح: اگر برنامه شامل کتابخانه AdMob است یا در آینده تبلیغات نمایش خواهد داد، باید
Yesانتخاب شود. این انتخاب برچسب "Contains ads" را در صفحه گوگل پلی فعال کرده و از نقض سیاستها جلوگیری میکند.
8. ردهبندی سنی و محتوا (پرسشنامه IARC)
برای تعیین رده سنی برنامه، باید پرسشنامه IARC (International Age Rating Coalition) را تکمیل نمایید.
الف. انتخاب دستهبندی و ایمیل
- دستهبندی:
All Other App Types(تمام برنامههای دیگر به جز بازیها، برنامههای شرطبندی یا شبکههای اجتماعی: ابزارها، محاسباتی، کاربردی). - ایمیل: ایمیل تماس را وارد کرده و شرایط IARC را تأیید کنید.
ب. سوالات پرسشنامه (Questionnaire)
بخش ۱: خشونت و ارتباطات کاربری
- محتوای برنامه (خشونت، مسائل جنسی، الفاظ رکیک):
No - اشتراک محتوای کاربران (صدا، پیام، تصویر بین کاربران):
No
بخش ۲: محتوا و محصولات دارای محدودیت سنی
- محتوای آنلاین (پخش استریم موسیقی/ویدیو یا کاتالوگ فروشگاهی):
No - ترویج محصولات دارای محدودیت سنی (دخانیات، الکل، قمار):
No(از آنجا که برنامه اجازه قمار نمیدهد، قطعاً No) - متفرقه (اشتراک موقعیت دقیق GPS):
No
بخش ۳: محصولات دیجیتال و ویژگیهای دیگر
- کالاهای دیجیتال (فروش کالای دیجیتال):
No(اگر سیستم خرید متصل نیست No، در صورت فعال بودن Yes و دریافت برچسب Digital Purchases) - جوایز نقدی (کارت هدیه، جایزه نقدی):
No - مرورگر وب (مرورگر اینترنت یا موتور جستجو):
No - اخبار یا آموزشی:
No
پاسخ No به تمامی این موارد، مناسبترین رده سنی برای مخاطبان عمومی در سراسر جهان را به ارمغان میآورد (PEGI 3, ESRB Everyone).
9. مخاطبان هدف و گروههای سنی (Target Audience)
هنگام تعیین مخاطبان هدف، بسیار حیاتی است که با توجه به قوانین Designed for Families (سیاست خانواده) و مقررات COPPA مشخص کنید که برنامه برای کودکان در نظر گرفته شده است یا خیر.
انتخاب صحیح: فقط 18 and over
- چرا فقط بالای ۱۸ سال؟
- انطباق قانونی: ابزارهای آماری و پیشبینی برای مخاطبان بزرگسال مناسب هستند.
- دوری از محدودیتهای سیاست خانواده: انتخاب افراد زیر ۱۸ سال موجب اعمال مقررات بسیار سختگیرانه روی SDKهای تبلیغاتی و تلهمتری میشود.
- هماهنگی با سیاست حریم خصوصی: با بند "The App is intended for audiences aged 18 and older" در سیاست حریم خصوصی ۱۰۰٪ هماهنگ است.
- مرحله دوم (آیا برنامه ممکن است ناخواسته توجه کودکان را جلب کند؟):
- پاسخ این سوال باید
Noباشد؛ زیرا هیچ المان یا کاراکتر کارتونی و کودکانه در رابط کاربری وجود ندارد.
- پاسخ این سوال باید
10. داشبورد محتوای برنامه (App Content Dashboard)
گوگل پلی کنسول وضعیت آمادگی محتوایی و قانونی برنامه را از طریق یک چکلیست در منوی سمت چپ تحت عنوان Policy and programs -> App content پیگیری میکند.
با تکمیل سیاست حفظ حریم خصوصی، مجوزهای ورود، تبلیغات و ردهبندی محتوا، تیکهای سبز (✓) ظاهر میشوند. سایر بخشهای لیست (امنیت داده، سازمانهای دولتی، امور مالی، سلامت) باید بهترتیب تکمیل شوند.
11. فرم امنیت دادهها (Data Safety Form)
یکی از بخشهای بهشدت حساس و تحت نظارت دقیق گوگل پلی است. باید اعلام کنید برنامه و کتابخانههای موجود چه دادههایی را جمعآوری میکنند یا به اشتراک میگذارند.
سوال: آیا برنامه شما هیچ نوع داده کاربری مورد نیاز را جمعآوری یا به اشتراک میگذارد؟
- انتخاب برای انتشار اولیه:
No(خیر). - دلیل فنی: از آنجا که در اولین بسته
aab.بارگذاریشده، SDKهای AdMob یا Firebase هنوز بهطور فعال دادههای حساس جمعآوری نمیکنند، انتخابNoفرم را بدون مشکل به پایان میرساند. - نکته برای آینده: هنگامی که این کتابخانهها فعال شوند، باید به این فرم بازگشته و آیتمهای "Approximate Location"، "App performance" و "Device or other identifiers (AD_ID)" را به
Yesبهروزرسانی نمایید.
پس از بازبینی پیشنمایش، آن را ذخیره نمایید.
12. بیانیههای قانونی و مقرراتی (دولتی، مالی، سلامت)
الف. برنامههای دولتی (Government Apps)
- انتخاب:
No(برنامه نماینده یک نهاد رسمی دولتی نیست).
ب. قابلیتهای مالی (Financial Features)
- انتخاب: گزینه
My app doesn't provide any financial featuresدر پایین صفحه. - تأیید: در پنجره پاپآپ، تأیید کنید که نیازی به ارائه مجوزها یا اسناد مالی نیست:
ج. برنامههای سلامت (Health Apps)
- انتخاب: گزینه
My app does not have any health featuresدر انتهای صفحه. - تأیید: در پنجره باز شده تأیید کنید که اسناد مربوط به سلامت منطقهای الزامی نیست:
13. تنظیمات فروشگاه و اطلاعات تماس (Store Settings)
دستهبندی فروشگاه و کانالهای ارتباطی کاربران با توسعهدهنده پیکربندی میشوند:
- دستهبندی برنامه (App Category):
SportsیاUtilities / Tools. - برچسبها (Tags): کلمات کلیدی مرتبط را انتخاب کنید (مثلاً Sports, Utilities).
- اطلاعات تماس در فروشگاه (Store Listing Contact Details):
- ایمیل پشتیبانی:
destek@sirketadi.com(ایمیل رسمی و معتبر ضروری است). - وبسایت:
https://company.com
- ایمیل پشتیبانی:
- بازاریابی خارجی (External Marketing): تیک آن را فعال بگذارید تا گوگل بتواند برنامه شما را در پلتفرمهای خارج از گوگل پلی تبلیغ کند:
14. صفحه اصلی فروشگاه و داراییهای بصری (Main Store Listing)
صفحه اصلی فروشگاه مهمترین بخشی است که مستقیماً روی تصمیم کاربران برای دانلود تأثیر میگذارد:
الف. متون
- نام برنامه (App Name): حداکثر ۳۰ کاراکتر (مثال:
15te15 - Spor Toto Assistant). - توضیح کوتاه (Short Description): حداکثر ۸۰ کاراکتر (مثال:
دستیار هوشمند محاسبات احتمالات و فیلترهای تحلیلی مسابقات.). - توضیح کامل (Full Description): توضیحات کامل شامل ویژگیها، مزایای فنی و اطلاعیههای قانونی.
ب. استانداردهای ابعاد بصری
- آیکون برنامه (App Icon): دقیقاً
512 x 512 px، فرمت PNG ۳۲ بیتی، حداکثر حجم ۱ مگابایت. - تصویر بنر برجسته (Feature Graphic): دقیقاً
1024 x 500 px، فرمت JPG یا PNG ۲۴ بیتی، حداکثر ۱۵ مگابایت. - اسکرینشاتهای گوشی (Phone Screenshots):
- حداقل ۲ و حداکثر ۸ تصویر.
- حداقل اندازه: 1080 پیکسل (مثال:
1080 x 2340 px). - نسبت ابعاد: 16:9 یا 9:16.
ج. بیانیه محتوای تولیدشده با هوش مصنوعی (Generative AI)
- حتی اگر از ابزارهای هوش مصنوعی برای تولید تصاویر استفاده کردهاید، تا زمانی که چهرههای فوتورئالیستی گمراهکننده تولید نکرده باشید، گزینه
Don't label assetsانتخاب میشود.
15. راهاندازی و بررسی تست بسته (Closed Testing Setup and Review)
برای حسابهای کاربری شخصی جدید در Google Play Console، گذراندن موفقیتآمیز فرایند Closed Testing (تست بسته) قبل از انتشار عمومی اجباری است.
الف. ارسال تغییرات برای بررسی (Publishing Overview)
وقتی همه تنظیمات فروشگاه و فرمها کامل شد، در بخش مرور انتشار لیست تغییرات در انتظار نمایش داده میشود:
اما برای فعال شدن دکمه "Send changes for review" در بالا سمت راست، باید حداقل یک نسخه در کانال تست بسته (Closed Testing) پیکربندی شده باشد.
ب. مراحل تست بسته
سه گام الزامی برای تکمیل تست بسته وجود دارد:
- انتخاب کشورها و مناطق (Select countries and regions):
- کشورهایی که مایل به انجام تست در آنها هستید را انتخاب کرده و دکمه Save را بزنید.
- انتخاب تسترها (Select testers):
- در تب Testers، یک لیست ایمیل انتخاب یا ایجاد کنید.
- برای دریافت مجوز انتشار نهایی در حسابهای شخصی، گوگل حضور حداقل ۲۰ کاربر آزمایشی را به مدت ۱۴ روز متوالی الزامی کرده است.
- پس از انتخاب، دکمه Save changes را در پایین کلیک کنید.
- ایجاد یک نسخه جدید (Create a new release):
- پس از تکمیل مراحل فوق، عبارت "2 of 4 complete" ظاهر میشود.
- روی دکمه آبی
Create new releaseکلیک کنید.
- بسته امضاشده
aab.را آپلود کنید. پس از پایان بارگذاری، گوگل پکیج را تجزیه و تحلیل میکند:
- همانطور که مشاهده میشود،
Target SDK: 36با موفقیت شناسایی شده،Version: 610060410و معماریها تأیید میشوند. - پس از کلیک روی
Next، هشدار جهش شماره نسخه ظاهر میشود:
- راهحل: روی لینک آبیرنگ
Proceed anywayکلیک کنید. - سپس با کلیک روی دکمه آبی
Save، نسخه با موفقیت ذخیره میشود.
پس از تکمیل این مراحل، میتوانید به صفحه Publishing overview برگشته و با دکمه Send changes for review فرایند بازبینی گوگل را آغاز نمایید.
ج. وضعیت رایج: خطای "App not available" در لینک تست
تصویر زیر متداولترین صفحهای است که تسترها هنگام باز کردن لینک تست بسته (play.google.com/apps/testing/com...) مشاهده میکنند:
"App not available - A testing version of this app hasn't been published yet or isn't available for this account."
دلایل و راهحل این هشدار:
- در حال بررسی (In Review): حتی اگر نسخه تست ارسال شده باشد، تا زمانی که تیم بازبینی گوگل آن را تأیید نکرده باشد، لینک فعال نخواهد شد. پس از تغییر وضعیت به "Available to testers" لینک فعال میشود.
- عدم تطابق حساب کاربری گوگل: حسابی که در مرورگر لاگین است باید دقیقاً همان ایمیلی باشد که در لیست Testers ثبت شده است.
- زمان انتشار سرورها: حتی پس از تأیید گوگل، معمولاً ۱ الی ۲ ساعت زمان میبرد تا لینک تست روی سرورهای جهانی گوگل پلی اعمال شود.
د. پیوستن به برنامه آزمایشی (Become a Tester - Opt-in)
پس از تأیید و فعالسازی لینک، صفحه دعوت رسمی زیر باز میشود:
- صفحه شامل آیکون برنامه، نام توسعهدهنده و متن دعوت است.
- با کلیک روی دکمه آبی
Become a tester، حساب کاربری وارد برنامه تست میشود. - در صفحه بعد، با کلیک روی پیوند "Download it on Google Play"، برنامه مستقیماً از فروشگاه گوگل پلی روی دستگاه اندروید دانلود میشود.
16. بیانیه شناسه تبلیغاتی (Advertising ID Declaration)
برای تمامی برنامههایی که اندروید ۱۳ (API 33) و بالاتر را هدف قرار میدهند، اعلام صریح نحوه استفاده از شناسه تبلیغاتی (AD_ID) الزامی است.
سوال: آیا برنامه شما از شناسه تبلیغاتی استفاده میکند؟
قانون کلیدی گوگل در این صفحه میگوید:
"If you say that your app uses advertising ID, we will block releases that don't include the com.google.android.gms.permission.AD_ID permission in the manifest file when targeting Android 13."
- گزینه ۱ (پیشنهادی):
No(خیر). - در بسته فعلی تست بسته، کتابخانههای تبلیغاتی به طور فعال پیادهسازی نشدهاند و مجوز
AD_IDدرAndroidManifest.xmlوجود ندارد. با انتخابNoهیچ تداخلی ایجاد نمیشود. - گزینه ۲ (در صورت انتخاب Yes):
- در صورت انتخاب
Yes، باید گزینه[x] Advertising or marketingعلامت زده شود و تیک مربوط به نادیده گرفتن خطای مانیفست (Turn off release errors) انتخاب شود.
در هر دو حالت، پس از انتخاب روی Save کلیک کنید.
17. ارسال نهایی برای بررسی (Final Submission)
پس از ثبت اطلاعات فروشگاه، سیاست حریم خصوصی، فرمهای امنیتی، بیانیهها، مخاطبان هدف و انتشار نسخه تست بسته، به صفحه Publishing overview بازمیگردید:
- Submit 14 changes for review: گوگل پلی تمام بیانیهها و نسخه آزمایشی را در قالب یک بسته بررسی جمعآوری میکند (۱۴ تغییر در انتظار تأیید).
- با کلیک روی دکمه آبی
Submit 14 changes for review، فرایند رسمی بررسی آغاز میشود. - بررسیهای خودکار کیفی در پسزمینه اجرا شده و سپس برنامه در صف بررسی کارشناسان قرار میگیرد. در حسابهای شخصی این بررسی معمولاً بین ۲۴ تا ۷۲ ساعت طول میکشد.
18. درخواست مجوز انتشار عمومی پس از تست بسته (Apply for Production)
هنگامی که فرایند تست بسته (تست مستمر به مدت حداقل ۱۴ روز با ۲۰ کاربر) به پایان رسید، دکمه "Apply for production" در داشبورد اصلی Play Console فعال میشود. با کلیک روی این دکمه، گوگل یک فرم جامع ۳ مرحلهای را برای اطمینان از انجام واقعی تست و آمادگی برنامه ارائه میدهد:
مراحل فرم:
- درباره تست بسته شما (About your closed test): نحوه یافتن کاربران، نحوه جمعآوری بازخوردها و اصلاحات انجامشده بر اساس بازخوردها سوال میشود.
- درباره برنامه شما (About your app): جامعه هدف و ارزش افزودهای که برنامه برای کاربران دارد شرح داده میشود.
- آمادگی انتشار عمومی شما (Your production readiness): نحوه پایش خطاها و مدیریت نظرات کاربران پس از انتشار عمومی مشخص میشود.
سوالات کلیدی و نمونه پاسخهای معتبر
1. "How did you recruit users for your closed testing? For example, did you ask friends and family, or use a paid testing provider?"
چگونه کاربران را برای تست بسته جذب کردید؟
قاعده مهم: گوگل به مزارع تستی پولی یا رباتها حساس است. بهترین رویکرد این است که نشان دهید تسترها کاربران ارگانیک واقعی، اطرافیان و اعضای انجمنهای مرتبط بودهاند.
I recruited testers organically through friends, family, and colleagues interested in sports analysis. Additionally, I invited active football prediction fans from targeted social media groups (Reddit & sports communities). No paid services were used; all were real, active users.
2. "How easy was it to recruit testers for your app?"
پیدا کردن تسترها برای برنامه چقدر آسان بود؟
- گزینه پیشنهادی:
Neither difficult or easyیاEasy. این گزینه نشان میدهد که فرایند بهصورت طبیعی و متعادل پیش رفته است.
3. "Describe the engagement you received from testers during your closed test"
میزان تعامل تسترها در طول دوره تست بسته را شرح دهید:
Testers actively used all core features: match fixtures, filters, and coupon generation. Their engagement matched real user behavior, logging in regularly around weekly match days to create coupons and review predictions. All tester activity closely mirrored real-world football fan usage.
4. "Provide a summary of the feedback that you received from testers. Include how you collected the feedback."
خلاصهای از بازخوردهای دریافتی و نحوه جمعآوری آنها ارائه دهید:
Feedback was collected via Google Play internal feedback, emails, and tester messaging groups. Testers appreciated the fast coupon generator but suggested improving font readability on small screens, adding clearer filter descriptions, and optimizing fixture loading on slow mobile networks.
مرحله ۲: درباره برنامه شما (About your app)
در این مرحله در مورد مخاطبان، ارزش ایجادشده و پیشبینی دانلود سال اول سوال میشود:
1. "Who is the intended audience of your app?"
مخاطبان هدف برنامه چه کسانی هستند؟
The intended audience includes adult football fans, sports enthusiasts, and Toto players seeking analytical tools to plan predictions. It is designed for users aged 18+ who want structured match fixture insights, mathematical coupon filtering, and systematic statistical analysis.
2. "Describe how your app provides value to users"
توضیح دهید برنامه شما چگونه برای کاربران ارزش ایجاد میکند:
The app provides value by automating complex coupon filtering and Toto calculations, saving users substantial time. It offers clean weekly fixture overviews, probability statistics, and intuitive mathematical tools that help sports fans make well-structured, data-informed prediction plans.
3. "How many installs do you expect your app to have in your first year?"
پیشبینی میکنید برنامه شما در سال اول چه تعداد نصب داشته باشد؟
- گزینه پیشنهادی:
0 - 10K(یک هدف واقعبینانه و ارگانیک برای توسعهدهنده مستقل).
مرحله ۳: آمادگی برای انتشار عمومی (Your production readiness)
در این بخش تغییرات ایجادشده بر اساس یادگیریهای دوره تست و نحوه اطمینان از پایداری برنامه پرسیده میشود:
1. "What changes did you make to your app based on what you learned during your closed test?"
بر اساس آموختههای تست بسته، چه تغییراتی در برنامه ایجاد کردید؟
Based on tester feedback, we adjusted font scaling and spacing for smaller screens, added descriptive labels to filter options, and optimized fixture caching for slower network connections. We also streamlined the coupon generation interface to make navigation smoother and more intuitive.
2. "How did you decide that your app is ready for production?"
چگونه تصمیم گرفتید که برنامه شما برای انتشار زنده آماده است؟
We confirmed production readiness through 14 days of closed testing with zero crashes and zero ANRs in Android Vitals. All core workflows (fixture browsing, filtering, and coupon generation) executed smoothly across diverse devices, and testers confirmed high stability and complete features.
پس از تکمیل تمام فیلدها، با کلیک روی دکمه آبی Apply در پایین، درخواست رسمی ارسال میشود.
صفحه ارسال درخواست (فرایند بررسی)
با فشردن دکمه 'Apply' کارت رسمی بررسی در صفحه Production نمایش داده میشود:
"We have your application for production access"
"We're reviewing your application form. We'll email the account owner with an update. This usually takes 7 days or less, but may occasionally take longer."
نکات مهم این مرحله:
- زمان بررسی: اگرچه گوگل عنوان میکند بررسی "7 days or less" طول میکشد، برای برنامههایی با پاسخهای منطقی و بدون کرش، نتیجه معمولاً بین ۲۴ تا ۷۲ ساعت مشخص میشود.
- اعلام نتیجه: با اتمام بررسی، ایمیل رسمی تأیید برای مالک حساب ارسال میشود.
- اقدام در طول انتظار: نیازی به اقدام خاصی نیست؛ کانال تست بسته میتواند فعال بماند.
19. پیروزی نهایی: تأیید دسترسی به نسخه تولید (Production Access)
هنگامی که فرایند Closed Testing (۱۴ روز تست فعال با حداقل ۲۰ کاربر آزمایشی) با موفقیت به پایان برسد و درخواست تأیید شود، ایمیل رسمی زیر از تیم Google Play Console ارسال میگردد:
"Congratulations! Your app has been granted Google Play production access"
"You applied for Google Play production access for your app, and this has now been granted. Production is where you make your app available to billions of users on Google Play."
این ایمیل چه معنایی دارد؟
- انتشار عمومی: برنامه شما اکنون مجوز دارد به جای فقط کاربران تست بسته، در دسترس میلیاردها کاربر اندروید در سرتاسر جهان قرار گیرد.
- عبور از فیلتر حساب شخصی: الزام ۲۰ تستر / ۱۴ روزه گوگل رسماً محقق شده و حساب توسعهدهنده به سطح قابل اعتماد (Trusted) ارتقا یافته است.
- انتشار با یک کلیک: در پنل Play Console در بخش Production، میتوانید نسخه تستشده را مستقیماً یا با یک نسخه جدید برای تمام جهان فعال کنید.
20. چکلیست پیش از انتشار (تکمیلشده)
تمام موارد کنترلی در طول فرایند:
- آیا شناسه برنامه و نام پکیج یکتا در Play Console ایجاد شده است؟
- آیا پکیج امضاشده
aab.باtargetSdkVersion 36کامپایل شده است؟ - آیا versionCode بالاتر از نسخههای پیشین است؟ (آیا روی هشدار Proceed anyway کلیک شد؟)
- آیا آدرس سیاست حفظ حریم خصوصی فعال بوده و با HTTPS بارگذاری میشود؟
- آیا App Access به عنوان
Noثبت شده است؟ - آیا بیانیه تبلیغات روی
Yesتنظیم شده است؟ - آیا ردهبندی سنی IARC کامل و گواهی دریافت شده است؟
- آیا مخاطب هدف روی
18 and overتنظیم شده است؟ - آیا فرم امنیت دادهها (Data Safety) تکمیل شده است؟
- آیا بیانیههای دولتی، مالی و سلامت همگی روی
Noثبت شدهاند؟ - آیا داراییهای فروشگاه (آیکون ۵۱۲x۵۱۲، بنر ۱۰۲۴x۵۰۰ و اسکرینشاتها) بارگذاری شدهاند؟
- تست بسته: آیا کشورها/مناطق انتخاب و ذخیره شدهاند؟
- تست بسته: آیا لیست تسترها انتخاب و ذخیره شده است؟
- تست بسته: آیا پکیج
aab.امضاشده بارگذاری و نسخهگذاری شده است؟ - شناسه تبلیغاتی: آیا برای انتشار اولیه روی
Noذخیره شده است؟ - مرور انتشار: آیا تغییرات برای بازبینی گوگل ارسال شدهاند؟
- آیا فرایند تست بسته و مجوز Production Access با موفقیت دریافت شده است؟
21. استودیو Arar Games و بازیهای ما
میتوانید برای تجربه بازیها، مکانیکها و بهروزرسانیهایی که در استودیوی مستقل خود توسعه دادهایم، از صفحات فروشگاه ما دیدن فرمایید:
🎮 بازیهای ما:
- 🛡️ Blocked: Pixel Panzer:
نبرد تانکهای پیکسلی رترو، گلولههای عنصری ColorWheel، آبوهوای پویا، نبردهای حماسی با باسها، لیدربوردهای جهانی و دستاوردهای Google Play!
👉 دانلود از Google Play (اندروید و رایانه) | Microsoft Store (ویندوز) - 🎨 Paint Trek:
تجربه آرکید متمرکز بر واکنش در دنیای رنگارنگ پیکسلی و فضای کیهانی.
👉 Google Play | Microsoft Store (رایانه و ایکسباکس) - 🚀 Space Dodger:
جاخالی دادن سریع و مهیج از موانع رترو آرکید در اعماق فضا.
👉 دانلود از Google Play
📢 شبکههای اجتماعی و ارتباطات:
برای دنبال کردن راهنماهای فنی جدید، گزارشهای توسعه و بهروزرسانیهای بازیها:
- 🎵 TikTok: @arargamesstudio
- 📸 Instagram: @arargamesstudio
- 🐦 X (Twitter): @arargamesstudio
- 📺 YouTube: @koreaaria
- 🧵 Threads: @arargamesstudio
- 📘 Facebook: arargamesstudio
تهیهشده توسط: آرشیو مستندات توسعهدهندگان استودیو Arar Games
Hiç yorum yok:
Yorum Gönder