Cài đặt quảng cáo từ Facebook Audience Network cho ứng dụng Android
Giả sử bạn có một ứng dụng với hàng tỉ lượt tải trên kho ứng dụng Google Play và bạn muốn kiếm một khoản tiền uống trà đá từ ứng dụng đó. Hôm nay tôi sẽ giới thiệu với các bạn cách cài đặt và kiếm tiền từ mạng quảng cáo Facebook Audience Network. Bước 1: Cài đặt dependency của FAN: bằng cách thêm ...
Giả sử bạn có một ứng dụng với hàng tỉ lượt tải trên kho ứng dụng Google Play và bạn muốn kiếm một khoản tiền uống trà đá từ ứng dụng đó. Hôm nay tôi sẽ giới thiệu với các bạn cách cài đặt và kiếm tiền từ mạng quảng cáo Facebook Audience Network.
Bước 1: Cài đặt dependency của FAN: bằng cách thêm dòng sau đây vào dependencies trong file app/build.gradle rồi nhấn nút sync gradle
compile "com.facebook.android:audience-network-sdk:4.26.0"
Như vậy là đã có thể bắt đầu viết code được rồi.
Bước 2: Bạn vào tài khoản facebook developer tại địa chỉ https://developers.facebook.com tạo một ứng dụng mới theo các bước mà facebook hướng dẫn rất chi tiết. Chọn tham gia vào mạng quảng cáo Facebook Audience Network.
Bước 3: Tạo khoảng không quảng cáo và vị trí đặt quảng cáo trong mục khoảng không quảng cáo, để cho đơn giản tôi sẽ hướng dẫn các bạn thêm quảng cáo banner, còn các loại khác như interstitial sẽ giới thiệu khi có dịp. Sau khi tạo và lấy được id quảng cáo dùng để load quảng cáo trong ứng dụng của bạn ví dụ : 4532336350xxxxx_4532340484xxxxx đến bước sau viết code.
Bước 4: tạo layout cho quảng cáo. Bạn cần xác định được vị trí đặt banner quảng cáo ví dụ phía trên cùng hoặc dưới cùng của ứng dụng, làm sao cho khi hiện quảng cáo thì nội dung của ứng dụng không được phép đè lên che mất quảng cáo hoặc quảng cáo hiện đè che mất 1 phần nội dung của ứng dụng, tốt nhất bạn nên tách riêng 2 layout quảng cáo và content không cái nào đè lên cái nào. ví dụ
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout ... > ... content layout above banner_container <LinearLayout android:id="@+id/banner_container" android:layout_awidth="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:orientation="vertical" /> ... </RelativeLayout>
Bước 5: Tạo quảng cáo và load quảng cáo:
private AdView adView; //Khai báo biến quảng cáo banner @Override public void onCreate(Bundle savedInstanceState) { ... setupFANAds(); } private void setupFANAds() { // Instantiate an AdView view, Thay thế YOUR_PLACEMENT_ID bằng id quảng cáo ví dụ 4532336350xxxxx_4532340484xxxxx adView = new AdView(this, "YOUR_PLACEMENT_ID", AdSize.BANNER_HEIGHT_50); // Find the Ad Container LinearLayout adContainer = (LinearLayout) findViewById(R.id.banner_container); // Add the ad view to your activity layout adContainer.addView(adView); // Request an ad adView.loadAd(); }
Thêm đoạn mã sau vào method onDestroy()
@Override protected void onDestroy() { if (adView != null) { adView.destroy(); } super.onDestroy(); }
Bước 5: Chạy thử, khi chạy thử mà bạn thấy hiện quảng cáo như này là đã thành công rồi.
Bước 6: Thêm test device để load quảng cáo test. Có một vấn đề bạn cần lưu ý đó là đừng bao giờ tự click vào quảng cáo của chính bạn sẽ khiến tài khoản của bạn bị vô hiệu hóa lúc đó không có cơ hội để có thể kiếm tiền lại từ Facebook với ứng dụng đó nữa. Để không nhầm lẫn thì có thể add device của bạn là thiết bị test, lúc đó quảng cáo hiện lên chỉ là quảng cáo test và bạn có thể click vào thoải mái mà không bị banned tài khoản. Khi chạy trên thiết bị, FAN sẽ in ra 1 dòng log trong đó có số Device hash của bạn như sau:
Hãy copy dòng đó và thêm vào chỗ load quảng cáo của bạn
Bước 7: Lắng nghe sự kiện quảng cáo. Bạn có thể thêm listener để lắng nghe các sự kiện như load ad thành công, load ad thất bại, ad đã hiển thị, ad được click và hành động gì tùy bạn
adView.setAdListener(new AdListener() { @Override public void onError(Ad ad, AdError adError) { // Ad error callback Toast.makeText(MainActivity.this, "Error: " + adError.getErrorMessage(), Toast.LENGTH_LONG).show(); } @Override public void onAdLoaded(Ad ad) { // Ad loaded callback } @Override public void onAdClicked(Ad ad) { // Ad clicked callback } @Override public void onLoggingImpression(Ad ad) { // Ad impression logged callback } }); adView.loadAd();
Bạn có thể tham khảo thêm tại đây