Trong series AdMob Interstitial này mình sẽ tóm tắt các kiến thức về AdMob policy cho interstitial, các ‘best practice’ để load & show interstitial và cuối cùng là một số kỹ thuật đo đếm và tối ưu performance cho interstitial.
Anh em vui lòng tham khảo các bài Mobile Ads cơ bản và Firebase nhập môn để trang bị đủ kiến thức cho series này.
Okay, bài đầu tiên mình sẽ tập trung nói vào vấn đề tưởng đơn giản nhưng lại khá dễ dàng vi phạm: policy. Thực tế thì AdMob có bộ policy tương đối rõ ràng và đầy đủ trong helpcenter của mình. Mình sẽ hệ thống lại từng trường hợp, lỗi thường gặp, cũng như cách khắc phục. Ta cùng phân tích từng vị trí có thể đặt interstitial nào.
“Mở app” ở đây chỉ việc ứng dụng mở ra sau khi người dùng bấm vào icon. Nó bao gồm 2 trường hợp: mở ứng dụng lần đầu và cả việc quay lại ứng dụng sau khi suspend (tạm dừng) nó. Thật sự thì vị trí mở app không phải là một ví trí “đắc địa” để hiển thị quảng cáo, do nó ảnh hưởng kha khá đến trải nghiệm người dùng. Tuy nhiên, nếu bạn vẫn muốn dùng vị trí này thì cần đặc biệt chú ý 2 lỗi vi phạm sau:
Vậy cách hiển thị đúng là gì? Nếu muốn hiển thị Interstitial khi mở app, bạn cần hiển thị nó giữa 2 màn hình khác nhau, cụ thể là một màn hình loading scene trung gian, sau đó là màn hình chính của ứng dụng
Luồng logic có thể hiểu đơn giản như sau:
Vị trí đặt interstitial phổ biến nhất, đó là khi người dùng chuyển qua lại giữa 2 màn hình. Khái niệm “màn hình” ở đây rất rộng, nó chỉ cần là 2 giao diện “phần lớn” khác nhau, và có một đoạn ngắn chuyển giữa 2 giao diện để người dùng biết, ngắt quãng hành vi của người dùng. Ví dụ, cùng là màn hình ingame có 1 popup game over, bấm vào nút retry có thể hiện interstitial, sau đó tắt interstitial thì có animation tắt popup và vào lại game (vẫn ở màn hình ingame) thì vẫn là hợp lệ, 2 giao diện khác nhau.
Quy tắc rất đơn giản và dễ hiểu, nhưng vẫn có một lỗi khá phổ biến có thể gặp là:
Dù không “cố ý”, nhưng mình thấy khá nhiều người mắc lỗi này. Nguyên do là trong code của ứng dụng, các bạn sử dụng event “bấm nút” của người dùng, và gọi đồng thời 2 hàm: hiện_interstitial và chuyển_scene. Tuy nhiên, hàm hiện interstitial không phải là 1 hàm block (chặn toàn bộ luồng ứng dụng), và có thể delay 0.5s-1s trước khi interstitial được hiện. Điều này dẫn đến việc dù hàm chuyển_scene được gọi sau nhưng nó vẫn làm cho người dùng chuyển hướng sang màn hình mới trước, và có thể sau đó 0.5s-1s thì interstitial hiển thị. Boom, bạn đã vi phạm policy.
Ngoài ra, một lỗi có thể nữa là bạn không preload (tải trước) quảng cáo. Khi người dùng bấm nút bạn mới gọi load, và dùng callback load quảng cáo thành công để hiển thị. Lỗi này khá tệ và nặng, vì nó làm quảng cáo hiển thị sau khi người dùng đã “vào” giao diện mới một thời gian khá lâu (5s-10s). Hoàn toàn có thể xảy ra việc người dùng đang thao tác (bấm, vuốt) trên màn hình mới thì bạn hiện quảng cáo.
Vậy logic đúng để hiển thị interstitial giữa 2 màn hình phải là:
Theo đúng logic trên, quảng cáo của bạn sẽ hiển thị đẹp và chuẩn ISO:
Tương tự như mở app, thoát app cũng không phải là một ví trí quá tốt, nhưng nếu bạn không có nhiều lựa chọn và vẫn muốn thử vị trí này thì cần tránh lỗi sau:
Interstitial không được phép là màn hình cuối cùng của ứng dụng!!! Do đó nếu thực sự muốn hiển thị tại vị trí này, bạn cần một màn hình trung gian nữa. Một màn hình “xác nhận thoát” có thể là một giải pháp.
Thật sự mình không khuyến khích vị trí này. Sẽ tốt hơn rất nhiều nếu bạn dùng quảng cáo Native để tích hợp vào màn hình xác nhận thoát (sẽ nói tới trong bài sau).
Ngoài các lỗi như vị trí đặt, thì AdMob cũng có một policy về việc interstitial hiển thị quá nhiều. Định nghĩa thế nào là “quá nhiều” thật sự không rõ ràng, nhưng nếu bạn cứ hiển thị interstitial tất cả mọi lần users thao tác chuyển màn hình thì chắc chắn vi phạm:
Để tránh bị vi phạm lỗi này, bạn nên kiểm soát giữa 2 lần show interstitial. Có thể dùng cách đếm thời gian giữa 2 lần hiển thị (quá 30s, 1p v.v.v.) hoặc đếm số thao tác (3 lần chuyển màn hình, 3 lần game over v.v.v). Chú ý các con số chỉ là tượng trưng.
Nghe qua thì thấy khá phức tạp, rối rắm và nhiều trường hợp. Nhưng bạn chỉ cần nhớ các quy tắc đơn giản sau để có thể dễ dàng kiểm tra ứng dụng của mình:
Để tuân thủ các điều trên cũng không quá khó. Bạn có thể tuân theo 3 nguyên tắc sau trong code của mình:
Chúc bạn may mắn ^^
Subscribe để theo dõi tiếp series này nhé!
1. App Open Ads là định dạng như thế nào Quảng cáo khi mở ứng…
Part II. Basic Ad formats Depending on type of apps, you will have different ad…
According to the definition of Google Ads support: Mobile ads are concepts to show ads…
Banner thì có gì mà nói? Cái định dạng cổ xưa, siêu cũ kỹ, ai…
III. Tối ưu hiệu quả Interstitial với Firebase Dạo qua phần 1 và phần 2,…
II. Kỹ thuật preload interstitial và các vấn đề liên quan 1. Preload Interstitial ở…
View Comments
I am the business owner of JustCBD Store label (justcbdstore.com) and I am currently trying to grow my wholesale side of business. It would be great if someone at targetdomain share some guidance :) I thought that the best way to accomplish this would be to reach out to vape shops and cbd retail stores. I was really hoping if anyone could recommend a qualified website where I can get CBD Shops B2B Marketing List I am presently taking a look at creativebeartech.com, theeliquidboutique.co.uk and wowitloveithaveit.com. Unsure which one would be the most ideal option and would appreciate any guidance on this. Or would it be easier for me to scrape my own leads? Ideas?
I'm the business owner of JustCBD Store company (justcbdstore.com) and I'm presently planning to broaden my wholesale side of company. I am hoping someone at targetdomain can help me ! I thought that the most effective way to do this would be to talk to vape stores and cbd retail stores. I was really hoping if anybody at all could recommend a dependable website where I can buy CBD Shops B2B Database I am currently examining creativebeartech.com, theeliquidboutique.co.uk and wowitloveithaveit.com. Not sure which one would be the very best solution and would appreciate any guidance on this. Or would it be easier for me to scrape my own leads? Suggestions?
Aw, this was an extremely good post. Taking a few minutes and actual effort to create a really good article… but what can I say… I hesitate a lot and never seem to get nearly anything done.
It’s hard to find well-informed people in this particular topic, however, you seem like you know what you’re talking about! Thanks
Next time I read a blog, Hopefully it does not fail me just as much as this one. After all, I know it was my choice to read, nonetheless I actually believed you'd have something helpful to talk about. All I hear is a bunch of moaning about something you could possibly fix if you weren't too busy looking for attention.
Having read this I believed it was very enlightening. I appreciate you taking the time and effort to put this short article together. I once again find myself spending a significant amount of time both reading and leaving comments. But so what, it was still worthwhile!
Way cool! Some extremely valid points! I appreciate you writing this article and also the rest of the site is also very good.
Great site you have here.. It’s difficult to find quality writing like yours these days. I really appreciate people like you! Take care!!
I was able to find good info from your content.
Very good info. Lucky me I ran across your blog by accident (stumbleupon). I have bookmarked it for later!