পুরস্কৃত ইন্টারস্টিশিয়াল হল এক ধরনের প্রণোদনামূলক বিজ্ঞাপন ফর্ম্যাট যা আপনাকে এমন বিজ্ঞাপনের জন্য পুরষ্কার অফার করতে দেয় যা প্রাকৃতিক অ্যাপ পরিবর্তনের সময় স্বয়ংক্রিয়ভাবে প্রদর্শিত হয়। পুরস্কৃত বিজ্ঞাপনের বিপরীতে, ব্যবহারকারীদের একটি পুরস্কৃত ইন্টারস্টিশিয়াল দেখতে অপ্ট-ইন করতে হবে না।
পূর্বশর্ত
- শুরু করুন গাইডটি সম্পূর্ণ করুন।
বাস্তবায়ন
পুরস্কৃত ইন্টারস্টিশিয়াল বিজ্ঞাপনগুলিকে সংহত করার প্রাথমিক পদক্ষেপগুলি নিম্নরূপ:
- একটি বিজ্ঞাপন লোড করুন
- [ঐচ্ছিক] SSV কলব্যাক যাচাই করুন
- কলব্যাকের জন্য নিবন্ধন করুন
- বিজ্ঞাপন প্রদর্শন করুন এবং পুরস্কার ইভেন্ট পরিচালনা করুন
একটি বিজ্ঞাপন লোড করুন
GADRewardedInterstitialAd
ক্লাসে load(adUnitID:request)
পদ্ধতি ব্যবহার করে একটি বিজ্ঞাপন লোড করা হয়।
সুইফট
সুইফটইউআই
import GoogleMobileAds
class RewardedInterstitialViewModel: NSObject, ObservableObject,
FullScreenContentDelegate
{
@Published var coins = 0
private var rewardedInterstitialAd: RewardedInterstitialAd?
func loadAd() async {
do {
rewardedInterstitialAd = try await RewardedInterstitialAd.load(
with: "ca-app-pub-3940256099942544/6978759866", request: Request())
rewardedInterstitialAd?.fullScreenContentDelegate = self
} catch {
print(
"Failed to load rewarded interstitial ad with error: \(error.localizedDescription)")
}
}
উদ্দেশ্য-C
আপনার বিজ্ঞাপন ইউনিট আইডি দিয়ে adUnitID প্রতিস্থাপন করুন।
[ঐচ্ছিক] সার্ভার-সাইড ভেরিফিকেশন (SSV) কলব্যাক যাচাই করুন
যে অ্যাপগুলির সার্ভার-সাইড যাচাইকরণ কলব্যাকে অতিরিক্ত ডেটার প্রয়োজন হয় তাদের পুরস্কৃত বিজ্ঞাপনগুলির কাস্টম ডেটা বৈশিষ্ট্য ব্যবহার করা উচিত। পুরস্কৃত বিজ্ঞাপন অবজেক্টে সেট করা যেকোনো স্ট্রিং মান SSV কলব্যাকের custom_data
ক্যোয়ারী প্যারামিটারে পাস করা হয়। যদি কোনো কাস্টম ডেটা মান সেট করা না থাকে, custom_data
ক্যোয়ারী প্যারামিটার মান SSV কলব্যাকে উপস্থিত থাকবে না।
নিচের কোড নমুনাটি দেখায় যে কিভাবে একটি বিজ্ঞাপনের অনুরোধ করার আগে একটি পুরস্কৃত ইন্টারস্টিশিয়াল বিজ্ঞাপন বস্তুতে কাস্টম ডেটা সেট করতে হয়।
সুইফট
উদ্দেশ্য-C
আপনার কাস্টম ডেটা দিয়ে SAMPLE_CUSTOM_DATA_STRING প্রতিস্থাপন করুন।
কলব্যাকের জন্য নিবন্ধন করুন
প্রেজেন্টেশন ইভেন্টের জন্য বিজ্ঞপ্তি পেতে, আপনাকে অবশ্যই GADFullScreenContentDelegate
প্রদান করা বিজ্ঞাপনের fullScreenContentDelegate
প্রপার্টিতে বরাদ্দ করতে হবে:
সুইফট
rewardedInterstitialAd?.fullScreenContentDelegate = self
সুইফটইউআই
rewardedInterstitialAd?.fullScreenContentDelegate = self
উদ্দেশ্য-C
self.rewardedInterstitialAd.fullScreenContentDelegate = self;
GADFullScreenContentDelegate
প্রোটোকল কখন বিজ্ঞাপনটি সফলভাবে বা অসফলভাবে উপস্থাপন করে এবং কখন এটি খারিজ করা হয় তার জন্য কলব্যাক পরিচালনা করে। নিম্নলিখিত কোডটি দেখায় কিভাবে প্রোটোকল প্রয়োগ করতে হয় এবং এটি বিজ্ঞাপনে বরাদ্দ করতে হয়:
সুইফট
func adDidRecordImpression(_ ad: FullScreenPresentingAd) {
print("\(#function) called.")
}
func adDidRecordClick(_ ad: FullScreenPresentingAd) {
print("\(#function) called.")
}
func adWillPresentFullScreenContent(_ ad: FullScreenPresentingAd) {
print("\(#function) called.")
}
func adWillDismissFullScreenContent(_ ad: FullScreenPresentingAd) {
print("\(#function) called.")
}
func adDidDismissFullScreenContent(_ ad: FullScreenPresentingAd) {
print("\(#function) called.")
// Clear the rewarded interstitial ad.
rewardedInterstitialAd = nil
}
func ad(
_ ad: FullScreenPresentingAd,
didFailToPresentFullScreenContentWithError error: Error
) {
print("\(#function) called with error: \(error.localizedDescription).")
}
সুইফটইউআই
func adDidRecordImpression(_ ad: FullScreenPresentingAd) {
print("\(#function) called")
}
func adDidRecordClick(_ ad: FullScreenPresentingAd) {
print("\(#function) called")
}
func ad(
_ ad: FullScreenPresentingAd,
didFailToPresentFullScreenContentWithError error: Error
) {
print("\(#function) called")
}
func adWillPresentFullScreenContent(_ ad: FullScreenPresentingAd) {
print("\(#function) called")
}
func adWillDismissFullScreenContent(_ ad: FullScreenPresentingAd) {
print("\(#function) called")
}
func adDidDismissFullScreenContent(_ ad: FullScreenPresentingAd) {
print("\(#function) called")
// Clear the rewarded interstitial ad.
rewardedInterstitialAd = nil
}
উদ্দেশ্য-C
- (void)adDidRecordImpression:(id<GADFullScreenPresentingAd>)ad {
NSLog(@"%s called", __PRETTY_FUNCTION__);
}
- (void)adDidRecordClick:(id<GADFullScreenPresentingAd>)ad {
NSLog(@"%s called", __PRETTY_FUNCTION__);
}
- (void)adWillPresentFullScreenContent:(id<GADFullScreenPresentingAd>)ad {
NSLog(@"%s called", __PRETTY_FUNCTION__);
}
- (void)adWillDismissFullScreenContent:(id<GADFullScreenPresentingAd>)ad {
NSLog(@"%s called", __PRETTY_FUNCTION__);
}
- (void)adDidDismissFullScreenContent:(id<GADFullScreenPresentingAd>)ad {
NSLog(@"%s called", __PRETTY_FUNCTION__);
// Clear the rewarded interstitial ad.
self.rewardedInterstitialAd = nil;
}
- (void)ad:(id)ad didFailToPresentFullScreenContentWithError:(NSError *)error {
NSLog(@"%s called with error: %@", __PRETTY_FUNCTION__, error.localizedDescription);
}
বিজ্ঞাপন প্রদর্শন করুন এবং পুরস্কার ইভেন্ট পরিচালনা করুন
আপনার বিজ্ঞাপনটি উপস্থাপন করার সময়, আপনাকে অবশ্যই একটি GADUserDidEarnRewardHandler
অবজেক্ট প্রদান করতে হবে যাতে ব্যবহারকারীর জন্য পুরষ্কারটি পরিচালনা করা যায়।
নিম্নলিখিত কোডটি একটি পুরস্কৃত ইন্টারস্টিশিয়াল বিজ্ঞাপন প্রদর্শনের জন্য সর্বোত্তম পদ্ধতি উপস্থাপন করে।
সুইফট
func showRewardedInterstitialAd() {
guard let rewardedInterstitialAd = rewardedInterstitialAd else {
return print("Ad wasn't ready.")
}
// The UIViewController parameter is an optional.
rewardedInterstitialAd.present(from: nil) {
let reward = rewardedInterstitialAd.adReward
print("Reward received with currency \(reward.amount), amount \(reward.amount.doubleValue)")
// TODO: Reward the user.
}
}
সুইফটইউআই
বিজ্ঞাপন প্রদর্শন করতে ভিউতে UI ইভেন্টগুলি শুনুন।
var rewardedInterstitialBody: some View {
// ...
}
.onChange(
of: showAd,
perform: { newValue in
if newValue {
viewModel.showAd()
}
}
)
ভিউ মডেল থেকে পুরস্কৃত ইন্টারস্টিশিয়াল বিজ্ঞাপন উপস্থাপন করুন:
func showAd() {
guard let rewardedInterstitialAd = rewardedInterstitialAd else {
return print("Ad wasn't ready.")
}
rewardedInterstitialAd.present(from: nil) {
let reward = rewardedInterstitialAd.adReward
print("Reward amount: \(reward.amount)")
self.addCoins(reward.amount.intValue)
}
}
উদ্দেশ্য-C
- (void)showRewardedInterstitialAd {
[self.rewardedInterstitialAd presentFromRootViewController:self
userDidEarnRewardHandler:^{
GADAdReward *reward = self.rewardedInterstitialAd.adReward;
NSString *rewardMessage = [NSString
stringWithFormat:@"Reward received with "
@"currency %@ , amount %ld",
reward.type, [reward.amount longValue]];
NSLog(@"%@", rewardMessage);
// TODO: Reward the user.
}];
}
গিটহাবের উদাহরণ
আপনার পছন্দের ভাষায় সম্পূর্ণ পুরস্কৃত ইন্টারস্টিশিয়াল বিজ্ঞাপনের উদাহরণগুলি দেখুন:
পরবর্তী পদক্ষেপ
ব্যবহারকারীর গোপনীয়তা সম্পর্কে আরও জানুন।