광고 수익 창출을 위한 WebView API 통합

광고용 Web view API를 사용하면 WebView의 태그에서 앱 신호를 사용할 수 있으므로 콘텐츠를 제공한 게시자의 수익 창출을 개선하고 광고주를 스팸으로부터 보호할 수 있습니다. 앱 ID, 앱 버전과 같은 이러한 앱 신호는 앱 트래픽에서만 사용할 수 있는 보고인앱 브라우저 인벤토리 타겟팅 사용 사례를 활성화하는 데 도움이 됩니다.

작동 방식

Google 모바일 광고 SDK (베타)와의 통신은 다음 중 하나에 의해 트리거된 광고 이벤트에 대한 응답으로만 발생합니다.

SDK는 이러한 광고 이벤트를 수신 대기하기 위해 등록된 WebView에 메시지 핸들러를 추가합니다. 작동 방식을 더 잘 이해하려면 테스트 페이지의 소스 코드를 확인하세요.

기본 요건

SDK에 애플리케이션 ID 전달하기

이미 Ad Manager 애플리케이션 ID가 있는 경우 기존 애플리케이션 ID로 Google 모바일 광고 SDK (베타)를 초기화하세요.

Ad Manager 애플리케이션 ID가 없는 경우 Google 모바일 광고 SDK (베타)를 초기화할 때 InitializationConfig.WEBVIEW_APIS_FOR_ADS_APPLICATION_ID를 애플리케이션 ID로 전달합니다.

Kotlin

MobileAds.initialize(
    this@MainActivity,
    // Use this application ID to initialize the Google Mobile Ads SDK (beta) if
    // you don't have an Ad Manager application ID.
    InitializationConfig.Builder(InitializationConfig.WEBVIEW_APIS_FOR_ADS_APPLICATION_ID)
        .build(),
  ) {
    // Adapter initialization complete.
  }

자바

MobileAds.initialize(
    this,
    // Use this application ID to initialize the Google Mobile Ads SDK (beta) if
    // you don't have an Ad Manager application ID.
    new InitializationConfig.Builder(InitializationConfig.WEBVIEW_APIS_FOR_ADS_APPLICATION_ID)
        .build(),
        initializationStatus -> {
          // Adapter initialization is complete.
          });

웹 뷰 등록

기본 스레드에서 registerWebView()를 호출하여 각 WebView 인스턴스 내에서 애드센스 코드 또는 Google 게시자 태그의 JavaScript 핸들러와 연결합니다. 이 작업은 가능한 한 빨리 실행해야 합니다(예: MainActivityonCreate() 메서드에서).

Kotlin

import android.webkit.CookieManager
import android.webkit.WebView
import com.google.android.libraries.ads.mobile.sdk.MobileAds

class MainActivity : AppCompatActivity() {
  lateinit var webView: WebView

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    webView = findViewById(R.id.webview)

    // Let the web view accept third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true)
    // Let the web view use JavaScript.
    webView.settings.javaScriptEnabled = true
    // Let the web view access local storage.
    webView.settings.domStorageEnabled = true
    // Let HTML videos play automatically.
    webView.settings.mediaPlaybackRequiresUserGesture = false

    // Register the web view.
    MobileAds.registerWebView(webView)
  }
}

자바

import android.webkit.CookieManager;
import android.webkit.WebView;
import com.google.android.libraries.ads.mobile.sdk.MobileAds;

public class MainActivity extends AppCompatActivity {
  private WebView webView;

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    webView = findViewById(R.id.webview);

    // Let the web view accept third-party cookies.
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);
    // Let the web view use JavaScript.
    webView.getSettings().setJavaScriptEnabled(true);
    // Let the web view access local storage.
    webView.getSettings().setDomStorageEnabled(true);
    // Let HTML videos play automatically.
    webView.getSettings().setMediaPlaybackRequiresUserGesture(false);

    // Register the web view.
    MobileAds.registerWebView(webView);
  }
}

통합 테스트

자체 URL을 사용하기 전에 다음 URL을 로드하여 통합을 테스트하는 것이 좋습니다.

https://google.github.io/webview-ads/test/#api-for-ads-tests

다음 조건이 적용되는 경우 테스트 URL에 통합이 성공했음을 나타내는 녹색 상태 표시줄이 표시됩니다.

  • WebView가 Google 모바일 광고 SDK (베타)에 연결됨

다음 단계

  • WebView에서 동의를 수집합니다. 광고용 Web view API는 IAB TCF v2.0 또는 IAB CCPA 규정 준수 프레임워크를 사용하여 모바일 앱 컨텍스트에서 수집된 동의를 웹 뷰의 태그에 전파하지 않습니다. WebView 및 수익 창출이 사용 설정된 해당 웹 콘텐츠의 소유자로서 단일 동의 흐름을 구현하려면 동의 관리 플랫폼과 협력하여 WebView 컨텍스트에서 동의를 수집하세요.