NowWebSDK クラス: Android

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

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

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

    表 : 1. パラメーター
    名前 タイプ Description (説明)
    インスタンス URL URL アクセスする ServiceNow インスタンスの URL。例 :「https://instance.servicenow.com」
    nowWebSdkコールバック NowWebViewServiceDelegate NowWebService を構成するためのホストアプリケーションのコールバック。
    表 : 2. 返される内容
    タイプ Description (説明)
    結果<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 }
    }