NowWebService クラス: Android
NowWebService API は、Web ビューをホストする NowWebActivity を起動する関数を提供します。
| 名前 | タイプ | 説明 |
|---|---|---|
| 構成 | NowServiceConfiguration クラス: Android | ServiceNowインスタンスの URL やパッケージの名前など、関連付けられたサービスの構成情報。 |
NowWebService - launch(context: Context, url: URL, nowWebTheme: NowWebTheme)
Web ビューをホストする NowWebActivity を作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| コンテキスト | コンテキスト | 関連アクティビティを起動するために使用するコンテキスト。 |
| URL | URL | ロードする Web ページの URL。この Web ページは、サービスが初期化されたターゲット ServiceNow インスタンス上にある必要があります。 |
| nowWebテーマ | NowWebテーマ | オプション。ビュー コントローラーの UI 要素に適用する NowWebTheme オブジェクト。 デフォルト:デフォルトテーマ |
| タイプ | 説明 |
|---|---|
| なし |
次のコード例は、この関数を呼び出す方法を示しています。
suspend fun launchNowWeb() {
val webService = getNowWebService()
val webTheme = object : NowWebTheme {
override val brand: Int
get() = Color.BLUE
override val textPrimary: Int
get() = Color.BLACK
//Override remaining theme colors
}
webService?.launch(activity, URL("https://instance-name.service-now.com"), webTheme)
}
NowWebService – preloadWebCache(preloadUris: List<URI>)
指定された java.net.URI のリストをヘッドレス Web ビューにプリロードして、ページ上のキャッシュ可能なリソースを Web ビューキャッシュに事前入力します。
注:
この関数呼び出しの完了は、ページ上のリダイレクトやリソースを考慮しないWebビューで呼び出される onPageFinished() に基づいています。このため、このメソッドが戻ったときにプリロードが完全に完了しない場合があります。
| 名前 | タイプ | 説明 |
|---|---|---|
| preloadUri | リスト | プリロードする java.net.URI のリスト。すべての java.net.URI は相対的であるか、NowSDK で構成されている現在のホストと一致する必要があります。 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、 webService.preloadWebCache() 関数を使用して mesp ページをプリロードする方法を示しています。
suspend fun preloadNowWeb() {
val webService = serviceProvider.webService()
webService.preloadWebCache(
listOf(
URI("mesp")
)
)
}
NowWebService – updateTheme(nowWebTheme:NowWebTheme)
NowWeb UI テーマを指定された UI テーマで更新します。この関数を使用して、テーマを明から暗に変更する場合など、 launch() 関数を使用して最初に設定された Web UI テーマを更新します。
| 名前 | タイプ | 説明 |
|---|---|---|
| nowWebテーマ | NowWebテーマ | ビュー コントローラーの UI 要素に適用する NowWebTheme オブジェクト。 |
| タイプ | 説明 |
|---|---|
| なし |
次のコード例は、 launch() 関数を使用して実装された明るい UI テーマを、 updateTheme() 関数を使用して暗い UI テーマに更新する方法を示しています。
val webService = getNowWebService()
val lightTheme = object : NowWebTheme {
override val brand: Int
get() = Color.BLUE
override val textPrimary: Int
get() = Color.BLACK
override val backgroundPrimary: Int
get() = Color.WHITE
// Override remaining theme colors
}
val darkTheme = object : NowWebTheme {
override val brand: Int
get() = Color.BLUE
override val textPrimary: Int
get() = Color.WHITE
override val backgroundPrimary: Int
get() = Color.BLACK
// Override remaining theme colors
}
//launch NowWeb with light theme
webService?.launch(activity, URL("https://instance-name.service-now.com"), lightTheme)
//update NowWeb with dark theme
webService?.updateTheme(darkTheme)