H5AdsWebViewClient

@RequiresApi(api = VERSION_CODES.LOLLIPOP)
class H5AdsWebViewClient : WebViewClient


H5 広告リクエストをインターセプトして処理する WebViewClient。これを使用するには、H5 広告リクエストを行うウェブアプリを含む WebView のクライアントとして設定します。

重要: この WebViewClient は複数の WebView に使用できません。H5 広告をサポートする新しい WebView では、必ず新しい H5AdsWebViewClient を使用する必要があります。

コード例:

public void onCreate(Bundle savedInstanceState) {
  ...

  // Initialize early to reduce latency on the session's first ad request.
  MobileAds.initialize(this);

  WebView myWebView = findViewById(R.id.my_webview);

  // JavaScript must be enabled.
  WebSettings settings = myWebView.getSettings();
  settings.setJavaScriptEnabled(true);

  H5AdsWebViewClient h5Client = new H5AdsWebViewClient(this, myWebView);

  // (Optional) any existing WebViewClient
  WebViewClient myClient = ...;
  h5Client.setDelegateWebViewClient(myClient);

  webView.setWebViewClient(h5Client);
}

概要

パブリック コンストラクタ

H5AdsWebViewClient(context: Context!, webView: WebView!)

H5AdsWebViewClient のコンストラクタ。

パブリック関数

Unit

H5 広告で管理されているすべての広告を破棄します。

Unit
doUpdateVisitedHistory(view: WebView!, url: String!, isReload: Boolean)
WebViewClient?

デリゲート WebViewClient を取得します。

Unit
onFormResubmission(view: WebView!, dontResend: Message!, resend: Message!)
Unit
onLoadResource(view: WebView!, url: String!)
Unit
@RequiresApi(api = VERSION_CODES.M)
onPageCommitVisible(view: WebView!, url: String!)
Unit
onPageFinished(view: WebView!, url: String!)
Unit
onPageStarted(view: WebView!, url: String!, favicon: Bitmap!)
Unit
Unit
@RequiresApi(api = VERSION_CODES.M)
onReceivedError(
    view: WebView!,
    request: WebResourceRequest!,
    error: WebResourceError!
)
Unit
onReceivedError(
    view: WebView!,
    errorCode: Int,
    description: String!,
    failingUrl: String!
)

この関数は非推奨になりました。

Unit
onReceivedHttpAuthRequest(
    view: WebView!,
    handler: HttpAuthHandler!,
    host: String!,
    realm: String!
)
Unit
@RequiresApi(api = VERSION_CODES.M)
onReceivedHttpError(
    view: WebView!,
    request: WebResourceRequest!,
    errorResponse: WebResourceResponse!
)
Unit
onReceivedLoginRequest(
    view: WebView!,
    realm: String!,
    account: String?,
    args: String!
)
Unit
onReceivedSslError(
    view: WebView!,
    handler: SslErrorHandler!,
    error: SslError!
)
Boolean
@RequiresApi(api = VERSION_CODES.O)
onRenderProcessGone(view: WebView!, detail: RenderProcessGoneDetail!)
Unit
@RequiresApi(api = VERSION_CODES.O_MR1)
onSafeBrowsingHit(
    view: WebView!,
    request: WebResourceRequest!,
    threatType: Int,
    callback: SafeBrowsingResponse!
)
Unit
onScaleChanged(view: WebView!, oldScale: Float, newScale: Float)
Unit
onTooManyRedirects(view: WebView!, cancelMsg: Message!, continueMsg: Message!)

この関数は非推奨になりました。

Unit
Unit

H5AdsWebViewClient で処理されないメソッドを委任するように WebViewClient を設定します。

WebResourceResponse?
WebResourceResponse?

この関数は非推奨になりました。

Boolean
Boolean
@RequiresApi(api = VERSION_CODES.N)
shouldOverrideUrlLoading(view: WebView!, request: WebResourceRequest!)
Boolean

この関数は非推奨になりました。

プロテクト関数

WebViewClient!

継承された関数

android.webkit.WebViewClient から
Unit
Unit
Unit
Unit
Unit
Unit
onPageStarted(p: WebView!, p1: String!, p2: Bitmap!)
Unit
Unit
Unit
onReceivedHttpAuthRequest(
    p: WebView!,
    p1: HttpAuthHandler!,
    p2: String!,
    p3: String!
)
Unit
onReceivedHttpError(
    p: WebView!,
    p1: WebResourceRequest!,
    p2: WebResourceResponse!
)
Unit
onReceivedLoginRequest(p: WebView!, p1: String!, p2: String!, p3: String!)
Unit
Boolean
Unit
onSafeBrowsingHit(
    p: WebView!,
    p1: WebResourceRequest!,
    p2: Int,
    p3: SafeBrowsingResponse!
)
Unit
onScaleChanged(p: WebView!, p1: Float, p2: Float)
Unit

この関数は非推奨になりました。

Unit
WebResourceResponse!
Boolean
Boolean

パブリック コンストラクタ

H5AdsWebViewClient

H5AdsWebViewClient(context: Context!, webView: WebView!)

H5AdsWebViewClient のコンストラクタ。

パラメータ
context: Context!

アクティビティまたはアプリのコンテキスト。

webView: WebView!

この H5AdsWebViewClient に関連付けられる WebView。WebView で JavaScript を有効にする必要があります。

パブリック関数

clearAdObjects

fun clearAdObjects(): Unit

H5 広告で管理されているすべての広告を破棄します。

注: このメソッドは、H5 以外の AdMob API( や など)によって作成された広告には影響しません。

doUpdateVisitedHistory

fun doUpdateVisitedHistory(view: WebView!, url: String!, isReload: Boolean): Unit

getDelegateWebViewClient

fun getDelegateWebViewClient(): WebViewClient?

デリゲート WebViewClient を取得します。

onFormResubmission

fun onFormResubmission(view: WebView!, dontResend: Message!, resend: Message!): Unit

onLoadResource

fun onLoadResource(view: WebView!, url: String!): Unit

onPageCommitVisible

@RequiresApi(api = VERSION_CODES.M)
fun onPageCommitVisible(view: WebView!, url: String!): Unit

onPageFinished

fun onPageFinished(view: WebView!, url: String!): Unit

onPageStarted

fun onPageStarted(view: WebView!, url: String!, favicon: Bitmap!): Unit

onReceivedClientCertRequest

fun onReceivedClientCertRequest(view: WebView!, request: ClientCertRequest!): Unit

onReceivedError

@RequiresApi(api = VERSION_CODES.M)
fun onReceivedError(
    view: WebView!,
    request: WebResourceRequest!,
    error: WebResourceError!
): Unit

onReceivedError

fun onReceivedError(
    view: WebView!,
    errorCode: Int,
    description: String!,
    failingUrl: String!
): Unit

onReceivedHttpAuthRequest

fun onReceivedHttpAuthRequest(
    view: WebView!,
    handler: HttpAuthHandler!,
    host: String!,
    realm: String!
): Unit

onReceivedHttpError

@RequiresApi(api = VERSION_CODES.M)
fun onReceivedHttpError(
    view: WebView!,
    request: WebResourceRequest!,
    errorResponse: WebResourceResponse!
): Unit

onReceivedLoginRequest

fun onReceivedLoginRequest(
    view: WebView!,
    realm: String!,
    account: String?,
    args: String!
): Unit

onReceivedSslError

fun onReceivedSslError(
    view: WebView!,
    handler: SslErrorHandler!,
    error: SslError!
): Unit

onRenderProcessGone

@RequiresApi(api = VERSION_CODES.O)
fun onRenderProcessGone(view: WebView!, detail: RenderProcessGoneDetail!): Boolean

onSafeBrowsingHit

@RequiresApi(api = VERSION_CODES.O_MR1)
fun onSafeBrowsingHit(
    view: WebView!,
    request: WebResourceRequest!,
    threatType: Int,
    callback: SafeBrowsingResponse!
): Unit

onScaleChanged

fun onScaleChanged(view: WebView!, oldScale: Float, newScale: Float): Unit

onTooManyRedirects

fun onTooManyRedirects(view: WebView!, cancelMsg: Message!, continueMsg: Message!): Unit

onUnhandledKeyEvent

fun onUnhandledKeyEvent(view: WebView!, event: KeyEvent!): Unit

setDelegateWebViewClient

fun setDelegateWebViewClient(delegate: WebViewClient?): Unit

H5AdsWebViewClient で処理されないメソッドを委任するように WebViewClient を設定します。

shouldInterceptRequest

fun shouldInterceptRequest(view: WebView!, request: WebResourceRequest!): WebResourceResponse?

shouldInterceptRequest

fun shouldInterceptRequest(view: WebView!, url: String!): WebResourceResponse?

shouldOverrideKeyEvent

fun shouldOverrideKeyEvent(view: WebView!, event: KeyEvent!): Boolean

shouldOverrideUrlLoading

@RequiresApi(api = VERSION_CODES.N)
fun shouldOverrideUrlLoading(view: WebView!, request: WebResourceRequest!): Boolean

shouldOverrideUrlLoading

fun shouldOverrideUrlLoading(view: WebView!, url: String!): Boolean

プロテクト関数

getDelegate

protected fun getDelegate(): WebViewClient!