NowChatService クラス - Android

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む5読むのに数分
  • NowChatService クラスには、NowChat アクティビティを起動してエラー構成を設定できるようにする関数が用意されています。

    NowChatService - launchIntent(context:Context, themeColors:NowChatTheme):Intent

    NowChat アクティビティを開くために使用するインテントを起動します。通常は 、[android.app.PendingIntent] を作成するために使用されます。

    表 : 1. パラメーター
    名前 タイプ 説明
    context コンテキスト インテントを構築するために使用されるコンテキスト。
    テーマカラー NowChatTheme オプション。NowChat UI で使用するテーマの色。

    デフォルト:デフォルトの色

    表 : 2. 返される内容
    タイプ 説明
    インテント 関連付けられた NowChat アクティビティを起動するために使用されるインテントとテーマの色。

    この例は、 launchIntent() メソッドを呼び出して戻りアクティビティを処理する方法を示しています。

    val intent = nowChatService.launchIntent(this) 
    val pendingIntent = PendingIntent.getActivity( 
        this, 
        REQUEST_CODE,
        intent,
        PendingIntent.FLAG_IMMUTABLE 
    ) 
    
    val notification = createNotification(title, message, pendingIntent)
    notificationManager.notify(push.notificationId, notification) 

    NowChatService - start(activity: Activity, themeColors: NowChatTheme = object : NowChatTheme{})

    指定された NowChat アクティビティを起動します。

    表 : 3. パラメーター
    名前 タイプ 説明
    アクティビティ アクティビティ NowChat アクティビティを起動し、onActivityResult を通じて NowChatExitCode を resultCode として受け取るために使用するアクティビティコンテキスト。
    テーマカラー NowChatTheme オプション。NowChat UI で使用するテーマの色。

    デフォルト:デフォルトの色

    表 : 4. 返される内容
    タイプ 説明
    なし

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

    lifecycleScope.launch {
      sdkManager.getNowChatService()?.start(this@MainActivity, object : NowChatTheme {
        override val brand: NowUIAdaptiveColor
          // Setting lightColor only. For dark theme default color will be used
          get() = NowUIAdaptiveColor(lightColor = Color.BLACK)
    
        override val primary: NowUIAdaptiveColor
          // Setting both lightColor and darkColor
          get() = NowUIAdaptiveColor(lightColor = Color.BLACK, darkColor = Color.WHITE)
    
        // Override the rest of color variables
      })
    }

    NowChatService - subscribeToUnreadMessageCount(pollingInterval: Long, リスナー: NowChatUnreadMessagesCountListener)

    未読チャットメッセージ数リスナーに登録します。

    表 : 5. パラメーター
    名前 タイプ 説明
    ポーリング間隔 Web サービスで未読チャットメッセージ数をポーリングする頻度。

    単位:ミリ秒

    リスナー NowChatUnreadMessagesCountListener 未読チャットメッセージの数を取得するために実装するリスナー。また、このメソッドを使用して NowChatService - unsubscribeFromUnreadMessageCount(リスナー: NowChatUnreadMessagesCountListener) 未読メッセージ数を取得する必要がなくなった場合も、このリスナーの登録を解除する必要があります。
    表 : 6. 返される内容
    タイプ 説明
    なし

    次の例は、チャットの未読メッセージ数リスナーを登録および登録解除する方法を示しています。

    private val unreadMessageCountListener = object: NowChatUnreadMessagesCountListener {
      override fun unreadMessagesCountDidChange(unreadMessageCount: Int) {
      }
    }
    
    fun setup() {
      nowChatService.subscribeToUnreadMessageCount(pollingInterval:1000, unreadMessageCountListener)
    }
    
    fun teardown() {
      nowChatService.unsubscribeFromUnreadMessageCount(unreadMessageCountListener)
    }
    

    NowChatService - unsubscribeFromUnreadMessageCount(リスナー: NowChatUnreadMessagesCountListener)

    未読メッセージ数の受信を登録解除します。

    表 : 7. パラメーター
    名前 タイプ 説明
    リスナー NowChatUnreadMessagesCountListener チャットの未読メッセージ数リスナーから登録解除するために実装するリスナー。
    表 : 8. 返される内容
    タイプ 説明
    なし

    次の例は、チャットの未読メッセージ数リスナーを登録および登録解除する方法を示しています。

    private val unreadMessageCountListener = object: NowChatUnreadMessagesCountListener {
      override fun unreadMessagesCountDidChange(unreadMessageCount: Int) {
      }
    }
    
    fun setup() {
      nowChatService.subscribeToUnreadMessageCount(pollingInterval:1000, unreadMessageCountListener)
    }
    
    fun teardown() {
      nowChatService.unsubscribeFromUnreadMessageCount(unreadMessageCountListener)
    }