Skip to content
Release: Australia · Updated: 2026-03-12 · Official documentation · View source

NowSDKConfiguration class- Android

The NowSDKConfiguration class contains configuration information needed to initialize the NowSDK.

NameTypeDescription
authorizationProviderNowSDKAuthorizationProvidingDelegate object that is responsible for providing authorization tokens to the NowSDK upon request.
logLevelNowLogLevelLevel of log messages for the associated logger to store.Valid values \(case-sensitive\): - Debug - Error - Fatal - Info - None
permissionDelegateDevicePermissionDelegateDelegate object called by the NowSDK to request permission from the host application to show system dialog for requesting the indicated device permission. For example:
override fun canRequestPermission(permission: DevicePermission): Boolean =
  when (permission) {
    DevicePermission.Camera -> true
    DevicePermission.Microphone -> false
  }
}

Parent Topic:Mobile SDK - Android

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

Creates a new NowSDKConfiguration object.

NameTypeDescription
authorizationProviderNowSDKAuthorizationProvidingDelegate object that is responsible for providing authorization tokens to the NowSDK upon request.
permissionDelegateDevicePermissionDelegateDelegate object called by the NowSDK to request permission from the host application to show system dialog for requesting the indicated device permission. For example:
override fun canRequestPermission(permission: DevicePermission): Boolean =
  when (permission) {
    DevicePermission.Camera -> true
    DevicePermission.Microphone -> false
  }
}
logLevelNowLogLevelLevel of log messages for the associated logger to store.Valid values \(case-sensitive\): - Debug - Error - Fatal - Info - None
TypeDescription
None 

The following code example shows how to call this function.

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
    }
}