NowChatSdkCallbacks インターフェイス - Android

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:4分
  • NowChatSdkCallbacks インターフェイスは、ホストアプリケーションのコールバックが NowChatSDK からのアクションを構成または処理できるようにする関数を提供します。

    表 : 1. プロパティ
    名前 タイプ Description (説明)
    isFileCollectionBlocked ブーリアン ホストアプリケーションが NowChat がファイルピッカーを開かないようにするかどうかを示すフラグ。
    有効な値:
    • true:ファイルピッカーが開かないようにします。
    • false:ファイルピッカーを開くことを許可します。
    isGalleryCollectionBlocked ブーリアン ホストアプリケーションが NowChat でフォトギャラリーを開かないようにするかどうかを示すフラグ。
    有効な値:
    • true:フォトギャラリーが開かないようにします。
    • false:フォトギャラリーを開くことを許可します。
    isLocationCollectionBlocked ブーリアン ホストアプリケーションが NowChat による位置情報配置へのアクセスを禁止するかどうかを示すフラグ。
    有効な値:
    • true:位置情報管理へのアクセスを禁止します。
    • false:位置情報配置へのアクセスを妨げません。
    isPhotoCollection ブロック済み ブーリアン ホストアプリケーションが NowChat によるカメラへのアクセスを禁止するかどうかを示すフラグ。
    有効な値:
    • true:カメラへのアクセスを禁止します。
    • false:カメラへのアクセスを妨げません。

    NowChatSdkCallbacks - loadUri(uri: Uri, context: Context)

    指定された URI を処理します (Web ビュー、カスタムタブ、外部ブラウザーで開くなど)。

    表 : 2. パラメーター
    名前 タイプ 説明
    URI URI 開く URI。
    context コンテキスト アプリケーションコンテキスト。
    表 : 3. 返される内容
    タイプ 説明
    なし

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

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
      override fun loadUri(uri: Uri, context: Context) {
    
        // Open the uri in a webview
        val webview = WebView(context)
        webview.loadUrl(uri.toString())
      }
    
      // Override other methods
    }

    NowChatSdkCallbacks - onExit(exitCode: NowChatExitCode)

    NowChat の終了時に返す結果コードを設定します。

    このコールバックは、全画面表示のチャットが閉じられ、ユーザーがホスト アプリケーションに戻ったときに呼び出されます。

    表 : 4. パラメーター
    名前 タイプ Description (説明)
    exitCode NowChatExitCode NowChat を終了する理由。
    有効な値:
    • ChatPluginNotInstalledError:チャットプラグインがインスタンスにインストールされていません。
    • SessionInitializationError:インスタンスとのセッションを初期化できません。
    • UserExit:ユーザーが上ボタンまたは戻るボタンを使用して終了しました
    • 不明:不明な理由。
    表 : 5. 返される内容
    タイプ 説明
    なし

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

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
    
      override fun onExit(exitCode: NowChatExitCode) {
        when (exitCode) {
          NowChatExitCode.UserExit -> Log.i("NowChat", "User exited using the up button or back button")
          NowChatExitCode.SessionInitializationError -> Log.i("NowChat", "Unable to initialize session with instance")
          NowChatExitCode.ChatPluginNotInstalledError -> Log.i("NowChat", " Chat plugin not installed on instance.")
          NowChatExitCode.Unknown -> Log.i("NowChat", "User exited for Unknown reason")
        }
      }
    
      // Override other methods
    }

    NowChatSdkCallbacks - provideProgressView(context: Context)

    NowChat UI データの読み込み中に表示するビューを返します。通常、構成された進行状況不定バー。

    表 : 6. パラメーター
    名前 タイプ 説明
    context コンテキスト ビューの作成に使用するアプリケーションコンテキスト。
    表 : 7. 返される内容
    タイプ Description (説明)
    ビュー ロード時に NowChat サービスが使用するビュー。

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

    class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
      override fun provideProgressView(context: Context): View? {
        return ProgressBar(context).apply {
          indeterminateTintList = ColorStateList.valueOf(
            MaterialColors.getColor(
              context,
              android.R.attr.colorPrimary,
              Color.BLACK)
          )
        }
    
        // Override other methods
      }
    }