رشد پیشرفته و SDK Lab
پروژه آماده، QR تست، انتشار سیاست، پیام و سفر مخاطب و کنترلهای مالی.
راهنمای رشد پیشرفته
در پنل «رشد پیشرفته» را باز کنید و ابزار مورد نیاز را از زبانهها انتخاب کنید. دادههای ناشر و تبلیغدهنده به فضای کاری همان حساب محدودند. مستندات مدیر فقط پس از ورود مدیر قابل مشاهدهاند.
کوتاهترین مسیر اتصال
- رسانه خود را ثبت و مالکیت را تأیید کنید. برای اپ: نام بسته و لینک انتشار عمومی؛ برای سایت: دامنه و تأیید مالکیت.
- برای هر فرمت موردنیاز جایگاه جداگانه بسازید.
- در «پروژه آماده»، رسانه و پلتفرم را انتخاب کنید. ZIP شامل SDK محلی، نمونه همه ۱۱ فرمت، Manifest، تنظیم عمومی و فهرست هش فایلهاست. جایگاه ساختهنشده خالی میماند.
- README همان پروژه را دنبال کنید. ساخت بومی و امضای اپ با ابزار توسعهدهنده انجام میشود. دامنه HTTPS در تنظیمات، سرور خود دیدنکس است؛ سرور شخصی لازم نیست.
پلتفرمها: Web، Flutter، Android، iOS، Unity، B4A، React Native و Godot. Godot فقط Android/Web و Unity فقط Android/iOS دارد. فایل انتشار در رجیستری عمومی بهصورت خودکار منتشر نمیشود.
آزمایشگاه SDK و دستگاه تست
SDK Lab هش دقیق منبع، هش بسته، وضعیت تست قرارداد، typecheck، ساخت بومی و رسید دستگاه را جدا نمایش میدهد. نتیجه یک منبع قدیمی برای نسخه فعلی معتبر نیست. آزمون دستگاه بدون رسید مستقل، تأییدشده محسوب نمیشود.
برای QR، جایگاه فعال رسانه تأییدشده را انتخاب کنید. لینک ۱۵ دقیقه اعتبار دارد و فقط یک نصب همان رسانه میتواند با رضایت صریح آن را مصرف کند. ابزار pair در SDK کد لینک را به دیدنکس ارسال میکند؛ سپس diagnosticToken برگشتی را در گزینه تست SDK قرار دهید. این تبلیغ هزینه، درآمد یا جایزه واقعی ایجاد نمیکند. رویدادهای تست فقط کدهای کوتاه بدون متن شخصی میپذیرند.
تنظیمات از راه دور و مصرف داده
برای هر جایگاه سیاست پایدار و آزمایشی، سهم آزمایش، توقف نمایش، مهلت، سقف بایت، کیفیت کممصرف، پیشبارگذاری WiFi و محافظت مرحله پرداخت را تنظیم کنید. انتخاب شاخه در نشست ثابت میماند. بازگشت سهم آزمایش را صفر میکند؛ ارتقا تنظیم آزمایشی را پایدار میکند. ویرایش همزمان با خطای نسخه رد میشود.
حد فایل ۶۴کیلوبایت تا۲۰مگابایت، مهلت۱تا۱۵ثانیه و فاصله آغاز نشست۰تا۱۰دقیقه است. فایل بیرونی با حجم نامعلوم در سیاست جدید محدودشده تحویل داده نمیشود. «فقط WiFi» مربوط به پیشبارگذاری است؛ تشخیصندادن شبکه به معنی WiFi نیست.
رویدادهای تجربه و رضایت
session_start، foreground، background، checkout_start، checkout_end، level_complete، registered، purchase و app_update پشتیبانی میشوند. نشست تصادفی است و شناسه کاربر، ایمیل یا شماره تلفن نیست. checkout_start تا checkout_end یا۱۵دقیقه تبلیغ محافظتشده را متوقف میکند. رویدادها برای سفر به externalId تصادفی یکتا نیاز دارند.
// Web: optional UI and API
const audience=DidnexAds.audience('UNT_BANNER');
await audience.showPreferences();
await audience.sessionEvent('session_start');
await audience.sessionEvent('checkout_start');
// finally, after checkout closes:
await audience.sessionEvent('checkout_end');
await audience.showMessages();
await audience.showOffers({onReward:receipt=>{
// Receipt is already applied on the hosted wallet.
}});رضایت تحلیل و پیام در فرم ترجیحات پیشفرض خاموش است. مخاطب موضوعها، ساعات سکوت، اختلاف منطقه زمانی و سقف۰تا۲۰پیام روزانه را انتخاب میکند. لغو تحلیل دادههای فعالیت/نمونه کارایی و پیوند شناسایی درخواست را حذف میکند. لغو پیام سفر فعال را متوقف میکند. اشتراک قدیمی دارای رضایت پوش، تا نخستین تنظیم ترجیحات همان رضایت قبلی را حفظ میکند.
API مشترک رشد در همه SDKها
همه عملیات با POST به /ad/v1/audience، action=next و توکن خصوصی همان نصب انجام میشوند. SDK توکن را مدیریت میکند؛ کلید پنل در اپ قرار ندهید. ثبت و نمایش، کیف جایزه و پوش قدیمی همچنان action اختصاصی خود را دارند.
Android از nextAsync، Swift از next، Flutter از next، Unity از GrowthAsync، B4A از Growth، React Native از client.next و Godot از ads.next استفاده میکنند. مثال امضای دقیق در راهنمای اختصاصی هر پلتفرم همراه فایل منبع قرار دارد.
نام دقیق کلاس و امضا در مثال خود SDK مرجع است؛ راهنمای هر پلتفرم در بخش مستقل همان پلتفرم قرار دارد.
| op | ورودی و رفتار |
|---|---|
preferences | بدون value: دریافت. با value شامل version، analytics، messaging، topics، quietStart، quietEnd، timezoneOffset و dailyCap: ذخیره با نسخه. |
config | unitId و sessionId: سیاست همان جایگاه. |
sessionEvent | event، sessionId و externalId یکتا: محافظت نشست و شروع سفر با رضایت. |
metrics | sdk و sdkVersion؛ launchMs/loadMs/memoryKb/slowFramesBps/bytes/errorCode اختیاری. فقط با رضایت تحلیل؛ حداکثر۳۰نمونه در ساعت. صفر یعنی نامشخص، متن خطا یا URL نفرستید. |
pair / pairEvent | pair: code و consent=true؛ pairEvent: pairId، kind، sdk، sdkVersion، code کوتاه و latencyMs. |
messages / readMessage | صفحه۱۰تایی با nextCursor مرکب createdAt+id؛ خواندن با messageId متعلق به نصب و بدون تکرار. |
offers | فهرست جایگاههای جایزهای فعال همین رسانه. پاداش فقط از تکمیل واقعی تبلیغ تأییدشده. |
adActions / coupon | deliveryId و signature همان تبلیغ. دریافت اکشن و صدور کوپن با programId؛ برای هر نصب/برنامه یک کوپن. |
submitLead | deliveryId، signature، formId، formVersion، consent=true، externalId ثابت در retry و values دقیق فیلدهای فرم. |
سفر مخاطب و صندوق پیام
سفر با یک رویداد شروع میشود؛ هر نصب یکبار برای هر نسخه وارد میشود. حداکثر۲۰مرحله از انتظار، شرط رویداد، پیام Inbox/Push و پایان. شماره مقصد شرط باید رو به جلو باشد؛ شماره آخر+۱ پایان است. پیام۱تا۷۲۰ساعت اعتبار دارد. تغییر نسخه یا توقف سفر اجرای قدیمی را لغو میکند. ساعات سکوت و سقف روزانه اجرا را عقب میاندازد؛ لغو رضایت یا موضوع غیرفعال، اجرا را لغو میکند.
Inbox جدید در دیدنکس پایدار و خواندن آن یکتا است. Inbox به Firebase و اجازه اعلان نیاز ندارد و هنگام فعالبودن اپ دریافت میشود. پوش پسزمینه همچنان به FCM/APNs/Web Push واقعی و اجازه سیستم نیاز دارد. accepted یعنی پذیرش سرویس و delivered/opened گزارش SDK است.
گزارش فرصت، ماندگاری و هزینه SDK
فرصتهای نمایش، درخواست، تحویل، بارگذاری، مشاهده و کلیک را جدا میشمارد و برای noFill علت قابل پیگیری میدهد؛ درآمد ازدسترفته فرضی تولید نمیکند. ماندگاری D1/D7/D30 بر مبنای روز تقویمی تهران و پس از پایان روز هدف است؛ گروه نابالغ نرخ ندارد. درآمد معلق/تأییدشده جداست و برگشتی حذف میشود. گزارش کارایی از نمونه اختیاری است، نه ابزار پروفایل سیستمعامل.
پایش رسانه
لینک انتشار اپ، ads.txt سایت و app-ads.txt وبسایت توسعهدهنده روزانه بررسی میشوند. خط ناشر مستقیم: دامنه دیدنکس، شناسه سازمان ناشر، DIRECT. لینک در دسترس، اثبات مالکیت نیست. خطا هشدار ایجاد میکند و خودکار رسانه را تعلیق نمیکند.
استودیوی چنداندازه
شناسه و نسخه پروژه فعال خود را وارد کنید؛ یک تا۵اندازه square، portrait، landscape، feed و banner انتخاب و در صورت تمایل کیت برند را اعمال کنید. طرح اصلی تغییر نمیکند. هر خروجی پروژه مستقل است و برای فایل ویدیو/تصویر باید آن را در استودیو صادر کنید. سقف۱۰۰پروژه فعال و مالکیت تصاویر رعایت میشود؛ تکرار درخواست با externalId یکسان پروژه تکراری نمیسازد.
خطاهای قابل انتظار
عدم تبلیغ، قطع اینترنت، مهلت، پاسخ خراب و بستهشدن صفحه باید مسیر عادی اپ را ادامه دهند. محدودیت فرکانس، لوکیشن و بودجه معتبر است. در خطای version_conflict، اطلاعات را دوباره دریافت کنید. در401/403 ورود یا مجوز را اصلاح کنید؛ در429 با فاصله تلاش کنید. از حلقه retry، گزارش توکن در لاگ و ساخت جایزه محلی خودداری کنید.