NowChatSdkCallbacks-Schnittstelle – Android
Die NowChatSdkCallbacks Die Schnittstelle bietet Funktionen, die Rückrufe für Hostanwendungen ermöglichen, um Aktionen aus dem NowChatSDK zu konfigurieren oder zu verarbeiten.
| Name | Typ | Beschreibung |
|---|---|---|
| IsFileCollectionBlocked | Boolean | Kennzeichnung, die angibt, ob die Hostanwendung verhindern soll, dass NowChat die Dateiauswahl öffnet. Gültige Werte:
|
| IsGalleryCollectionBlocked | Boolean | Kennzeichnung, die angibt, ob die Hostanwendung verhindern soll, dass NowChat die Fotogalerie öffnet. Gültige Werte:
|
| IsLocationCollectionBlocked | Boolean | Kennzeichnung, die angibt, ob die Hostanwendung verhindern soll, dass NowChat auf die Positionierung der Positionsbestimmung zugreift. Gültige Werte:
|
| IsPhotoCollection blockiert | Boolean | Kennzeichnung, die angibt, ob die Hostanwendung den Zugriff von NowChat auf die Kamera verhindern soll. Gültige Werte:
|
NowChatSdkCallbacks – didEndSessionWithId(sessionId: Zeichenfolge)
Wird aufgerufen, wenn der Chat-Bildschirm geschlossen wird und die Chat-Sitzung endet.
| Name | Typ | Beschreibung |
|---|---|---|
| sessionId | Zeichenfolge | SYS_ID der Sitzung, die beendet wurde. Tabelle: Konversationssitzung [sys_cs_Session] |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Codebeispiel zeigt, wo Ihr Code platziert werden soll, um die Standardfunktionalität zu überschreiben.
class SampleNowChatSDKCallbacks : NowChatSdkCallbacks {
override fun didEndSessionWithId(sessionId: String) {
Log.i("NowChat", "Chat session $sessionId ended.")
}
//override other methods
}
NowChatSdkCallbacks – loadUri(URI: URI, context: Kontext)
Verarbeitet den angegebenen URI, z. B. das Öffnen in einer Webansicht, einer anwenderdefinierten Registerkarte oder einem externen Browser.
| Name | Typ | Beschreibung |
|---|---|---|
| uri | URI | Zu öffnender URI. |
| context | Kontext | Anwendungskontext. |
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.
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)
Legt den Ergebniscode fest, der zurückgegeben wird, wenn NowChat beendet wird.
Dieser Rückruf wird aufgerufen, wenn dieser Vollbildchat geschlossen wird und der Anwender zur Hostanwendung zurückkehrt.
| Name | Typ | Beschreibung |
|---|---|---|
| exitCode | NowChatExitCode | Grund für das Beenden von NowChat. Gültige Werte:
|
| Typ | Beschreibung |
|---|---|
| Keine |
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.
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(Kontext: Kontext)
Gibt die Ansicht zurück, die angezeigt werden soll, wenn die NowChat-UI-Daten geladen werden; normalerweise ein konfigurierter unbestimmter Fortschrittsbalken.
| Name | Typ | Beschreibung |
|---|---|---|
| context | Kontext | Anwendungskontext, der zum Erstellen der Ansicht verwendet werden soll. |
| Typ | Beschreibung |
|---|---|
| Anzeigen | Zeigen Sie an, dass der NowChat-Service beim Laden verwendet. |
Das folgende Codebeispiel zeigt, wie diese Funktion aufgerufen wird.
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
}
}