콘텐츠로 이동

WebView 데이터 모니터링

이 문서는 HarmonyOS WebView 환경에서의 데이터 수집 방식을 설명합니다.

활성화 방법

RUM 설정에서 setEnableTraceWebView(true)를 활성화하면 SDK가 자동으로 WebView의 RUM 데이터를 수집합니다.

Host 허용 목록 설정

setAllowWebViewHost(...)를 사용하여 WebView JavaScript Bridge를 허용할 Host를 제한할 수 있습니다. 허용 목록은 WebView 내 Browser SDK에 제공됩니다. null 또는 빈 배열을 전달하면 Host를 제한하지 않습니다.

import { FTSDK, FTRUMConfig } from '@guancecloud/ft_sdk/Index';

const rumConfig = new FTRUMConfig()
  .setRumAppId('your-rum-app-id')
  .setEnableTraceWebView(true)
  .setAllowWebViewHost(['example.com', 'm.example.com']);

FTSDK.installRUMConfig(rumConfig);

사용 예시

import { FTWebViewHandler } from '@guancecloud/ft_sdk/Index';
import { webview } from '@kit.ArkWeb';

@Component
export struct MyWebViewPage {
  @State webController: webview.WebviewController = new webview.WebviewController();
  private webViewHandler: FTWebViewHandler = new FTWebViewHandler();

  aboutToAppear() {
    this.webViewHandler.setWebView(this.webController);
  }

  aboutToDisappear() {
    this.webViewHandler.clearWebController();
  }

  build() {
    Web({
      src: 'https://example.com',
      controller: this.webController
    })
    .javaScriptAccess(true)
    .javaScriptProxy(this.webViewHandler.getJavaScriptProxy(this.webController))
  }
}

설명

  • FTWebViewHandler는 애플리케이션 진입점의 RUM 설정을 읽습니다.
  • 페이지 진입 시 webController를 바인딩하고, 페이지 이탈 시 즉시 정리해야 합니다.
  • setEnableTraceWebView(true)를 활성화하지 않으면 WebView 데이터가 자동으로 수집되지 않습니다.
  • Host 허용 목록을 설정한 경우, 허용 목록에 포함된 페이지만 JavaScript Bridge를 사용할 수 있습니다.

문서 평가

이 페이지가 도움이 되었나요?