NowWebSDK クラス - Android

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

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

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

    表 : 1. パラメーター
    名前 タイプ 説明
    instanceURL URL アクセスする ServiceNow インスタンスの URL。たとえば、 "https://instance.servicenow.com"
    nowWebSdkCallbacks NowWebViewServiceDelegate NowWebService を構成するホストアプリケーションのコールバック。
    表 : 2. 返される内容
    タイプ 説明
    結果<NowWebService> Kotlin 結果オブジェクトにラップされた 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 }
    }