NowSDKConfiguration クラス - Android

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む3読むのに数分
  • NowSDKConfiguration クラスには、NowSDK を初期化するために必要な構成情報が含まれています。

    表 : 1. プロパティ
    名前 タイプ 説明
    認証プロバイダー NowSDKA 認証の提供 要求に応じて NowSDK に認証トークンを提供する委任オブジェクト。
    logLevel NowLogLevel 保存する関連ロガーのログメッセージのレベル。
    有効な値 (大文字と小文字を区別):
    • デバッグ
    • エラー
    • 致命的
    • 情報
    • なし
    権限委任 デバイス権限委任

    指定されたデバイス権限を要求するためのシステムダイアログを表示するために、ホストアプリケーションに権限を要求するために NowSDK によって呼び出されるデリゲートオブジェクト。

    たとえば、次のようになります。
    override fun canRequestPermission(permission: DevicePermission): Boolean =
      when (permission) {
        DevicePermission.Camera -> true
        DevicePermission.Microphone -> false
      }
    }

    NowSDKConfiguration - NowSDKConfiguration(authorizationProvider: NowSDKAuthorizationProviding, permissionDelegate: DevicePermissionDelegate, logLevel: NowLogLevel)

    新しい NowSDKConfiguration オブジェクトを作成します。

    表 : 2. パラメーター
    名前 タイプ 説明
    認証プロバイダー NowSDKA 認証の提供 要求に応じて NowSDK に認証トークンを提供する委任オブジェクト。
    権限委任 デバイス権限委任

    指定されたデバイス権限を要求するためのシステムダイアログを表示するために、ホストアプリケーションに権限を要求するために NowSDK によって呼び出されるデリゲートオブジェクト。

    たとえば、次のようになります。
    override fun canRequestPermission(permission: DevicePermission): Boolean =
      when (permission) {
        DevicePermission.Camera -> true
        DevicePermission.Microphone -> false
      }
    }
    logLevel NowLogLevel 保存する関連ロガーのログメッセージのレベル。
    有効な値 (大文字と小文字を区別):
    • デバッグ
    • エラー
    • 致命的
    • 情報
    • なし
    表 : 3. 返される内容
    タイプ 説明
    なし

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

    class SampleApplication : Application(), NowSDKAuthorizationProviding, DevicePermissionDelegate {
    
        private val nowSdkSettings = NowSDKSettings(
            instanceBaseURL = "https://instance-name.service-now.com",
            clientId = "client_id",
            user = "user"
        )
    
        private val coroutineScope = CoroutineScope(Dispatchers.IO)
    
        private val nowSDKConfiguration = NowSDKConfiguration(this, this, NowLogLevel.Debug)
        override fun onCreate() {
            super.onCreate()
    
            NowSDK.configure(this, nowSDKConfiguration)
        }
    
    
        override fun requestAuthorization(
            instanceURL: URL,
            callback: Consumer<List<AuthorizationToken>?>
        ) {
            coroutineScope.launch {
                when {
                    nowSdkSettings.user.isNullOrBlank().not() -> authorizeWithJWT(
                        callback = callback,
                        user = nowSdkSettings.user,
                        clientId = nowSdkSettings.clientId
                    )
    
                    else -> authorizeWithGuest(callback = callback)
                }
            }
        }
    
        override fun canRequestPermission(permission: DevicePermission): Boolean {
            return true
        }
    }