--- title: NowSDK - Android description: The NowSDK class is a singleton that provides the public API for the NowSDK. This class is the gateway to all Android SDK feature services.Configures the NowSDK for use.Clears all user sessions persisted in memory. locale: en-US canonical_url: https://www.servicenow.com/docs/r/australia/api-reference/cllent-mobile-api-reference/NowSDKAndroidAPI.html release: australia product: Cllent Mobile API Reference classification: cllent-mobile-api-reference topic_type: concept last_updated: "2026-03-12" reading_time_minutes: 1 breadcrumb: [Mobile SDK - Android, Mobile SDK API reference, API reference, API implementation and reference] --- # NowSDK- Android The NowSDK class is a singleton that provides the public API for the NowSDK. This class is the gateway to all Android SDK feature services. Before initializing a feature service, you must initialize the SDK itself by calling [NowSDK.configure\(\)](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/api-reference/cllent-mobile-api-reference/NowSDKAndroidAPI.md). For additional information on getting started with the Android NowSDK, refer to the ServiceNow Mobile SDK Developers Guide - Android. **Parent Topic:**[Mobile SDK - Android](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/api-reference/cllent-mobile-api-reference/MobileSDKAndroidAPI.md) ## NowSDK - configure\(application: Application, configuration: NowSDKConfiguration\) Configures the NowSDK for use. You must call this function before attempting to use any of the feature services provided by the SDK. |Name|Type|Description| |----|----|-----------| |application|[Application](https://developer.android.com/reference/kotlin/android/app/Application.html)|Reference to the hosting application object.| |configuration|NowServiceConfiguration|Object containing the information necessary to initialize the NowSDK.| |Type|Description| |----|-----------| |None|NowSDKError is thrown if the provided configuration is invalid.| 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?> ) { 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 } } ``` ## NowSDK - logout\(\) Clears all user sessions persisted in memory. |Name|Type|Description| |----|----|-----------| |None| | | |Type|Description| |----|-----------| |None| | The following code example shows how to call this function. ``` class SampleApplication : Application() { private val nowSDKConfiguration = NowSDKConfiguration(authorizationProvider, permissionDelegate, NowLogLevel.Debug) override fun onCreate() { super.onCreate() NowSDK.configure(this, nowSDKConfiguration) } fun logout() { // Clear all user session when an application resets the user session NowSDK.logout() } } ```