12/08/2018, 16:22

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

0