الدروس
إعلانات مكافأة تدفع
نسخ الصفحة
قدم فيديو كمكافأة، وتحقق على خادمك أن اللاعب شاهده، وادفع مرة واحدة لكل فيديو.
الصفحة تلعب الفيديو وتحصل على adId. خادمك يتحقق من adId مع Lia، ثم يُعطي المكافأة، مرة واحدة.
#في صفحتك
async function secondChance() {
const result = await Lia.showRewardedAd({
onState: function (state) {
if (state === "loading") pauseGame();
},
});
if (!result.watched) {
if (result.reason === "no_ad") Lia.toast("No video right now. Try again soon.");
return endRun();
}
const { ok } = await api("/api/second-chance", { adId: result.adId });
ok ? continueRun() : endRun();
}قدم الفيديو بزرك الخاص ("شاهد فيديو للبقاء في التطبيق"). يختار الأشخاص الفيديوهات المُكافأة، لذلك Lia لا'لإيقافهم.
#على خادمك
app.post("/api/second-chance", async (req, res) => {
const playerId = await playerFrom(req.body.session);
if (!playerId) return res.status(401).end();
let ad;
try {
ad = await lia("POST", "/ads/verify", { adId: req.body.adId });
} catch {
return res.json({ ok: false });
}
if (!ad.watched || ad.playerId !== playerId) return res.json({ ok: false });
// Once per video: a second request with the same adId gets nothing more.
const first = await db.useOnce(`ad:${ad.adId}`);
if (!first) return res.json({ ok: false });
await db.grantSecondChance(playerId);
res.json({ ok: true });
});#دفع $LIA مقابل فيديو
إذا كانت المكافأة $LIA منك الخزانة, المفتاح المكافأة يقوم بالـ "مرة واحدة" لك:
await lia("POST", "/rewards", { playerId, amount: 0.5, key: `ad:${ad.adId}`, reason: "Watched a video" });#بين الجولات
بين الجولات، استخدم إعلانًا وسطيًا، وليس فيديو مكافأة: لأنها'مختصرة وقابلة للإغلاق، ولا يحتاج أحد إلى اختيارها. لا تحتاج إلى خادم وتعطي شيئًا. اسأل في كل انقطاع طبيعي ودع Lia ينظمها (بشكل افتراضي مرة واحدة كل 90 ثانية كحد أقصى، كل 2nd جولة):
async function nextRound() {
await Lia.showInterstitialAd(); // often answers "too_soon" at once, and that's fine
startRound();
}احتفظ بالفيديوهات المكافأة لما يطلبه اللاعب، خلف زر يقول ما يحصلون عليه.
الشاشة الإعلانية المكافأة تقع بين 둘: Lia تقدمها مع مشاهدة وتجاهل، وعند مشاهدتها يكون هناك adId لتحديد أي إجابة بنفسك. ارجع بقيمة للإجابة، أو رمي
#مفيد للاستيعاب
/ads/verifyتقولwatched: trueللإعلانات الوسيطة التي تم عرضها أيضًا. فقط المكافأةadIdالصفحة حصلت عليها من تنسيق مكافأة معwatched: true.- إذا توقف الفيديو جزئيًا بسبب مشكلة على الهاتف، يُحسب Lia كأنه تم مشاهدته، حتى لا يخسر أحد المكافأة بسبب إعلان معطوب.
- إيقاف اللعبة وصوتها على
"loading"; صفحةك تسمع أيضًاpauseوresumeحول الفيديو.
تم الترجمة تلقائيًا. الإنجليزية هي مصدر الحقيقة. اقرأ باللغة الإنجليزية