NowWebSDK クラス: Android

  • リリースバージョン: Yokohama
  • 更新日 2025年01月30日
  • 所要時間:2分
  • NowWebSDK クラスは、ServiceNow インスタンスでホストされている Web ページをネイティブ Web ビューと Cabrillo にロードできるようにする単一の関数を提供します。ユーザーにログイン Web ページからインスタンスへのログインを強制するのではなく、ユーザー認証とセッション管理を自動的に処理します。

    NowWebSDK - makeWebService(instanceURL: URL, nowWebSdkCallbacks: NowWebViewServiceDelegate? = null)

    NowWeb サービスを作成します。

    表 : 1. パラメーター
    名前 タイプ 説明
    インスタンス URL URL アクセスする ServiceNow インスタンスの URL。例: 「https://instance.servicenow.com」
    nowWebSdkCallback NowWebViewServiceDelegate NowWebService を構成するためのホストアプリケーションのコールバック。
    表 : 2. 戻り値
    タイプ 説明
    結果<NowWebService> Kotlin Result オブジェクトにラップされた NowWebService オブジェクト。

    次のコード例は、この関数を呼び出す方法を示しています。

     private var nowWebService: NowWebService? = null
    
    /**
      * Create the NowWebService once in the lifetime of the application, inside the Application
      * class or another manager class that will be injected into other classes via dagger/hilt.
      * NowWebService should be created after initializing the NowSDK.
      */
    suspend fun getNowWebService(): NowWebService? {
      if (nowWebService != null) return nowWebService
    
      return NowWebSDK.makeWebService(URL("https://instance-name.service-now.com"), object :
        NowWebViewServiceDelegate {
        override fun flowEnded(activity: Activity, flowName: String?) {
          Log.i("NowWebSdk", "flow ended")
        }
    
        override fun requestedDismissal(activity: Activity) {
          Log.i("NebWebSdk", "screen should be dismissed")
        }
    
        override fun navigationFailed(activity: Activity, error: String) {
          Log.i("NebWebSdk", "navigation failed")
        }
    
        override fun unsupportedUrl(activity: Activity, uri: Uri) {
          Log.i("NebWebSdk", "URL is unsupported")
        }
      }).getOrThrow()
          .also { this.nowWebService = it }
    }