### CloudSyncProvider Setup with Dynamic API Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/CloudSyncProvider.html Example illustrating the setup of CloudSyncProvider using the dynamic API. This approach involves creating an OnlineODataProvider and SQLDatabaseProvider, then initializing CloudSyncProvider and an OfflineDataService for data operations. ```java public void setupService() { OnlineODataProvider onlineProvider = new OnlineODataProvider("HealthService", "http://health.example.com:8080"); SQLDatabaseProvider localDatabase = new SQLDatabaseProvider("HealthDB", "jdbc:h2:~/health.h2"); CloudSyncProvider offlineProvider = new CloudSyncProvider(onlineProvider, localDatabase); offlineProvider.setEncryptionKey(this.dbEncryptionKey()); offlineProvider.createDynamicIndex("Patients", "dateOfBirth"); this.setHealthService(new OfflineDataService(offlineProvider)); this.getHealthService().open(); } ``` -------------------------------- ### Perform a GET Request using HttpRequest Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/http/HttpRequest.html This example demonstrates how to initialize an HttpRequest, open a GET connection to a URL, send the request, and retrieve the response text. ```java public void classExample() { com.sap.cloud.mobile.odata.http.HttpRequest request = new com.sap.cloud.mobile.odata.http.HttpRequest(); request.open(com.sap.cloud.mobile.odata.http.HttpMethod.GET, "http://google.com"); request.send(); String text = request.getResponseText(); request.close(); Example.show("google.com home page text: ", text); } ``` -------------------------------- ### Get String and Guid Property Values Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/Property.html Provides methods to retrieve string and GUID values from properties. This includes getting the standard string label, JSON field names, and nullable GUIDs. ```Java String getLabel() final String getJsonField() GuidValue getGuid(@NonNull() @NotNull() StructureBase source) GuidValue getNullableGuid(@NonNull() @NotNull() StructureBase source) String getNullableString(@NonNull() @NotNull() StructureBase source) ``` -------------------------------- ### start() Method Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/foundation/foundation/com.sap.cloud.mobile.foundation.usage/-usage-broker/start.html Initializes the UsageBroker service with the required application context and versioning information. ```APIDOC ## start() ### Description Starts the UsageBroker service, which initializes the usage store for tracking application metrics. ### Method Kotlin Function Call ### Parameters #### Path Parameters - **app** (Application) - Required - The Android Application reference. - **context** (Context) - Required - The Android context. - **applicationVersion** (String) - Required - The version of the application, matching the value in com.sap.cloud.mobile.foundation.common.SettingsParameters. ### Throws - **OpenFailureException** - Thrown when an error occurs opening the usage store. - **EncryptionError** - Thrown when an error occurs generating the default encryption key. ### Request Example UsageBroker.start(application, context, "1.0.0") ``` -------------------------------- ### GET /slice/{start}/{end} Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-data-schema-map/-entry-list/slice.html Retrieves a specific range of the EntryList defined by start and end indices. ```APIDOC ## GET /slice/{start}/{end} ### Description Returns a slice of the list from index `start` (inclusive) to index `end` (exclusive). Supports negative indices to represent positions relative to the end of the list. ### Method GET ### Endpoint /slice/{start}/{end} ### Parameters #### Path Parameters - **start** (Int) - Required - Zero-based starting index (inclusive), or negative for relative indexing. - **end** (Int) - Required - Zero-based ending index (exclusive), or negative for relative indexing. ### Response #### Success Response (200) - **EntryList** (Object) - The requested slice of the list. ``` -------------------------------- ### startStandardOnboarding Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/onboarding/onboarding/com.sap.cloud.mobile.onboarding.launchscreen/-welcome-screen-action-handler/start-standard-onboarding.html Executes the standard user onboarding process from a provided fragment. ```APIDOC ## startStandardOnboarding ### Description Executes the standard user onboarding process. This function is triggered by the Welcome Screen activity and runs on a worker thread. ### Method Function Call ### Endpoint startStandardOnboarding(fragment: Fragment) ### Parameters #### Path Parameters - **fragment** (Fragment) - Required - The caller welcome screen activity. ### Note This function is executed on a worker thread. Do not perform UI operations directly within this call. ### Request Example startStandardOnboarding(myWelcomeFragment) ### Response #### Success Response (void) - **N/A** - The function completes the onboarding process asynchronously. ``` -------------------------------- ### Get Margin Start Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/fiori/fiori/com.sap.cloud.mobile.fiori.contact/-profile-header/-layout-params/index.html Retrieves the start margin of the layout parameters, respecting the current layout direction. ```kotlin open fun getMarginStart(): Int ``` -------------------------------- ### Implementing WelcomeScreenActionHandler Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/onboarding/onboarding/com.sap.cloud.mobile.onboarding.launchscreen/-welcome-screen-action-handler/index.html An example of how to implement the WelcomeScreenActionHandler interface to handle onboarding actions. This implementation requires overriding the startDemoMode, startOnboardingWithDiscoveryServiceEmail, and startStandardOnboarding methods. ```kotlin class MyActionHandler : WelcomeScreenActionHandler { override fun startDemoMode(fragment: Fragment) { // Logic to start demo mode } override fun startOnboardingWithDiscoveryServiceEmail(fragment: Fragment, userEmail: String) { // Logic for discovery service onboarding } override fun startStandardOnboarding(fragment: Fragment) { // Logic for standard onboarding } } ``` -------------------------------- ### Get Slice of EnumValueList Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/EnumValueList.html Extracts a portion (slice) of the EnumValueList, either from a start index or between start and end indices. ```Java @NonNull()@NotNull() final EnumValueList slice(int start) See slice(int, int). Parameters: `start` - Start parameter. Returns: (see linked method). ``` ```Java @NonNull()@NotNull() final EnumValueList slice(int start, int end) Return a slice of this list from index `start` (inclusive) to index `end` (exclusive). Parameters: `start` - Zero-based starting index (inclusive), or negative for starting index relative to the end of this list. `end` - Zero-based ending index (exclusive), or negative for ending index relative to the end of this list. Returns: A slice of this list from index `start` (inclusive) to index `end` (exclusive). ``` -------------------------------- ### fun start(application, services, apiKey, pubKey) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/foundation/foundation/com.sap.cloud.mobile.foundation.mobileservices/-s-d-k-initializer/start.html Initializes the application and registers provided mobile services to listen for application state changes. ```APIDOC ## Initialization Method: start ### Description Starts the application with the specified services. Each service instance is notified of application state changes, allowing them to execute logic based on the current lifecycle state. ### Method Kotlin Function (JVM Static) ### Parameters #### Arguments - **application** (Application) - Required - The main application instance. - **services** (vararg MobileService) - Required - A variable number of services to be registered. - **apiKey** (String) - Optional - The API key for authentication. - **pubKey** (String) - Optional - The public key for security verification. ### Request Example ```kotlin MobileSDK.start( application = this, services = arrayOf(AnalyticsService(), PushService()), apiKey = "your-api-key", pubKey = "your-public-key" ) ``` ### Response - **void** - This method does not return a value. ``` -------------------------------- ### Initialize and Configure DownloadQuery Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/DownloadQuery.html Demonstrates how to instantiate a DownloadQuery object and configure its properties, including the query definition and stream download settings. ```java DownloadQuery query = new DownloadQuery(); query.setName("MyDownloadQuery"); query.setQuery(new DataQuery().filter(Customer.ID.equal(100))); query.setStreams(true); ``` -------------------------------- ### Get Timeline Start Visibility Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/fiori/com/sap/cloud/mobile/fiori/timeline/views/TimelineLineView.html Retrieves the visibility status of the timeline start. Returns an integer representing visibility. ```Java int getTimelineStartVisibility() ``` -------------------------------- ### Initialize and Configure DownloadGroup Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/DownloadGroup.html Demonstrates how to instantiate a DownloadGroup and add entities, sub-groups, and queries to the configuration. ```java DownloadGroup group = new DownloadGroup("MyOfflineGroup"); group.addGroup("SubGroupA"); group.addQuery("QueryName"); // Adding entity sets via name group.entities.add("Customers"); ``` -------------------------------- ### Get Start Label View Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/fiori/com/sap/cloud/mobile/fiori/formcell/SliderFormCell.html Retrieves the TextView component representing the start label. Returns a TextView or null. ```Java @Nullable()@VisibleForTesting() TextView getStartLabelView() ``` -------------------------------- ### initialize Method Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/onboarding/onboarding/com.sap.cloud.mobile.fiori.onboarding/-q-r-code-confirm-screen/initialize.html Initializes the QRCodeConfirm screen with the provided configuration settings. ```APIDOC ## initialize ### Description Initializes the screen with the given settings object to customize the QRCodeConfirm interface. ### Method POST ### Endpoint /initialize ### Parameters #### Request Body - **settings** (QRCodeConfirmSettings) - Required - The configuration object used to customize the screen appearance and behavior. ### Request Example { "settings": { "title": "Confirm QR Code", "timeout": 30 } } ### Response #### Success Response (200) - **status** (string) - Indicates successful initialization of the screen. #### Response Example { "status": "success" } ``` -------------------------------- ### Kotlin: Get Range Start Index Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata.core/-untyped-list/start-range.html This function returns the starting point for a range, as indicated by the 'start' parameter. The 'start' parameter specifies the index, which can be negative to indicate a position relative to the end of a list. ```Kotlin fun startRange(start: Int): Int { // Implementation details would go here return start } ``` -------------------------------- ### Initialize Usage Reporting Framework Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/usage/Usage.html Demonstrates how to initialize the Usage framework by first implementing a UsageStore and then instantiating the Usage class with the store. ```java MyUsageStore store = new MyUsageStore("myStoreDatabaseName"); Usage usage = new Usage(store); ``` -------------------------------- ### Get Range Start Index - Kotlin Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kotdoc/odata/kotlin-odata/com.sap.cloud.mobile.kotlin.odata.core/-untyped-list/index.html Calculates and returns the starting index for a range based on the provided 'start' integer. This is useful for operations involving sub-sections of the list. ```kotlin fun startRange(start: Int): Int Return the starting point for a range, as indicated by `start`. ``` -------------------------------- ### onlineSetupStarting Method Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-proxy-internal/online-setup-starting.html Initializes the online setup process for a given data synchronization provider. ```APIDOC ## onlineSetupStarting ### Description Triggers the start of the online setup sequence for the specified data synchronization provider. ### Method N/A (Function Call) ### Parameters #### Arguments - **provider** (DataSyncProvider) - Required - The instance of the data synchronization provider to initialize. ### Usage Example ```kotlin onlineSetupStarting(mySyncProvider) ``` ``` -------------------------------- ### GET indexOf(item: Char, start: Int) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-char-list/index-of.html Finds the first occurrence of a character in the list starting from a specified index. ```APIDOC ## indexOf(item: Char, start: Int) ### Description Returns the first index of the specified character, searching forward from the provided start index. ### Method GET ### Parameters #### Path Parameters - **item** (Char) - Required - The character to search for. - **start** (Int) - Required - The zero-based index to begin the search. ### Response #### Success Response (200) - **index** (Int) - The zero-based index of the character, or -1 if not found. ``` -------------------------------- ### Initialize and Configure NetworkOptions Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/NetworkOptions.html Demonstrates how to instantiate the NetworkOptions class and configure network settings such as compression and tunneling preferences. ```java NetworkOptions options = new NetworkOptions(); options.setCompressRequests(true); options.setCompressResponses(true); options.setAllowTunneling(false); boolean isCompressed = options.getCompressRequests(); ``` -------------------------------- ### Get Year Menu Start Padding - Kotlin Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/fiori-compose-ui/fiori-compose-ui/com.sap.cloud.mobile.fiori.compose.datepicker.ui/-date-picker-styles/index.html Retrieves the start padding value for the year menu. This is a read-only property. ```kotlin @Composable abstract fun yearMenuPaddingStart(): Dp ``` -------------------------------- ### Get Qwedge Installation Status (Java) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/fiori/com/sap/cloud/mobile/fiori/qrcode/ScannerStatusRegistry.html Retrieves the installation status of the Qwedge scanner. This method is part of the ScannerStatusRegistry class. ```Java final Boolean getIsQwedgeInstalled() ``` -------------------------------- ### Download Media Example (Java) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/DataService.html An example demonstrating how to use the downloadMedia method to retrieve media content from the SAP Cloud API. ```Java public void downloadMediaExample() { MediaService service = this.getService(); DataQuery query = new DataQuery().filter(Image.label.equal("Smiley")) .top(1); Image image = service.getImage(query); ByteStream stream = service.downloadMedia(image); byte[] data = stream.readAndClose(); } ``` -------------------------------- ### Initialize and Manage SecureKeyValueStore Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/securestore/SecureKeyValueStore.html Demonstrates how to instantiate the SecureKeyValueStore and manage its lifecycle by opening and closing the store. ```java SecureKeyValueStore kvStore = new SecureKeyValueStore(context, "my_secure_store"); byte[] key = "my-encryption-key".getBytes(); kvStore.open(key); if (kvStore.isOpen()) { // Perform operations } kvStore.close(); ``` -------------------------------- ### Get ProGlove Installation Status (Java) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/fiori/com/sap/cloud/mobile/fiori/qrcode/ScannerStatusRegistry.html Retrieves the installation status of the ProGlove scanner. This method is part of the ScannerStatusRegistry class. ```Java final Boolean getIsProGloveInstalled() ``` -------------------------------- ### GET /activity/intent Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/foundation/foundation/com.sap.cloud.mobile.foundation.authentication/-web-view-activity/index.html Retrieves the Intent that started the activity. ```APIDOC ## GET /activity/intent ### Description Returns the Intent that started this activity. ### Method GET ### Endpoint /activity/intent ### Response #### Success Response (200) - **intent** (Intent) - The intent object. ``` -------------------------------- ### Initialize and Open SecureKeyValueStore Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/securestore/SecureKeyValueStore.html Demonstrates how to create an instance of SecureKeyValueStore and open it with an encryption key. It also shows how to let the store generate an encryption key if none is provided. ```java byte[] myEncryptionKey = EncryptionUtil.getEncryptionKey("aliasForMyKeyValueStore", myPasscode); SecureKeyValueStore store = new SecureKeyValueStore(appContext, "myKeyValueStoreName"); store.open(myEncryptionKey); // Or pass null for the store to generate the encryption key transparently. // store.open(null); ``` -------------------------------- ### FioriSliderStyles: Get Start Label Icon Background Shape (Kotlin) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/fiori-compose-ui/fiori-compose-ui/com.sap.cloud.mobile.fiori.compose.slider.ui/-fiori-slider-styles/index.html Defines the shape for the background of the start label's icon. This allows for customization of the visual appearance of the start label. ```kotlin @Composable abstract fun startLabelIconBackgroundShape(): State ``` -------------------------------- ### startStandardOnboarding Method Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/onboarding/com/sap/cloud/mobile/onboarding/launchscreen/WelcomeScreenActionHandler.html Executes the standard user onboarding process. This method is called by the Welcome Screen activity and should not be used for UI calls directly as it executes on a worker thread. ```APIDOC ## startStandardOnboarding ### Description Executes the standard user onboarding process. This callback function is called by the Welcome Screen activity represented by the activity parameter. This callback is executed on a worker thread, not on the main thread, therefore do not use UI calls directly. ### Method abstract void ### Endpoint N/A (Method within an interface) ### Parameters #### Path Parameters None #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (void) This method does not return a value. #### Response Example None ``` -------------------------------- ### GET lastIndexOf (With Start Index) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kotdoc/odata/kotlin-odata/com.sap.cloud.mobile.kotlin.odata/-multi-polygon-coordinates/last-index-of.html Retrieves the last index of a specified PolygonCoordinates item, searching backwards from a given starting index. ```APIDOC ## GET /lastIndexOf/search ### Description Returns the last index of the specified PolygonCoordinates item in the list, searching backwards starting from the provided index. ### Method GET ### Endpoint /lastIndexOf/search ### Parameters #### Query Parameters - **item** (PolygonCoordinates) - Required - The item to search for. - **start** (Int) - Required - The zero-based starting index for the backward search. ### Response #### Success Response (200) - **index** (Int) - The zero-based index of the last occurrence, or -1 if not found. ``` -------------------------------- ### startDemoMode Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/onboarding/onboarding/com.sap.cloud.mobile.onboarding.launchscreen/-welcome-screen-action-handler-impl/start-demo-mode.html Initiates the demo mode process from the welcome screen fragment. ```APIDOC ## startDemoMode ### Description Runs the demo mode from the welcome screen. This function is executed on a worker thread, so UI-related operations should not be performed directly within this call. ### Method Function Call ### Parameters #### Path Parameters - **fragment** (Fragment) - Required - The caller welcome screen fragment. ### Request Example startDemoMode(myWelcomeFragment); ### Response #### Success Response (void) - The function executes the demo mode logic on a background thread. ``` -------------------------------- ### slice - Get Sublist from Start Index Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/AggregateFromList.html Returns a sublist (slice) of the current AggregateFromList starting from the specified index to the end of the list. ```Java @NonNull()@NotNull() final AggregateFromList slice(int start) See slice(int, int). Parameters: `start` - Start parameter. Returns: (see linked method). ``` -------------------------------- ### Configure DownloadQuery instance Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-download-query/index.html Demonstrates how to instantiate a DownloadQuery and configure its properties including the query name, the data query filter, and stream download settings. ```kotlin val downloadQuery = DownloadQuery() downloadQuery.setName("MyEntityQuery") downloadQuery.setQuery(DataQuery().filter(Entity.id.equal(100))) downloadQuery.setStreams(true) ``` -------------------------------- ### Kotlin: Initiate Online Data Sync Setup Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-proxy-internal/online-setup-starting.html This Kotlin function, `onlineSetupStarting`, is called to begin the online setup process for data synchronization. It takes a `DataSyncProvider` object as a non-null parameter, indicating the source or configuration for the synchronization. ```Kotlin open fun onlineSetupStarting(@NonNull @NotNull provider: @NotNull DataSyncProvider) ``` -------------------------------- ### Get Start Range Index for UntypedList (Java) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/core/UntypedList.html Returns the starting point for a range operation within the UntypedList, based on the provided start index. This is often used in conjunction with other range-based methods. ```Java final int startRange(int start) ``` -------------------------------- ### Get Slice of SortItemList (Start Index) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/SortItemList.html Returns a slice of the SortItemList starting from the specified index to the end of the list. This method delegates to slice(int, int). Parameters include the starting index. ```Java @NonNull()@NotNull() final SortItemList slice(int start) ``` -------------------------------- ### Initialize ThemeDownloadService Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/foundation/foundation/com.sap.cloud.mobile.foundation.theme/-theme-download-service/index.html Shows the initialization process for the service, including setting the application context and API key. ```kotlin val service = ThemeDownloadService(context) service.init(applicationInstance, "your_api_key_here") ``` -------------------------------- ### GET /utils/startsWith Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kotdoc/odata/kotlin-odata/com.sap.cloud.mobile.kotlin.odata.core/-string-function/-companion/starts-with.html Checks if a string starts with a specified prefix. ```APIDOC ## GET /utils/startsWith ### Description Determines whether a source string starts with a specified prefix, optionally starting from a specific index. ### Method GET ### Endpoint /utils/startsWith ### Parameters #### Query Parameters - **value** (string) - Required - The source string to evaluate. - **prefix** (string) - Required - The prefix to check for. - **start** (integer) - Optional - The starting index for the check (defaults to 0). ### Request Example GET /utils/startsWith?value=hello&prefix=he&start=0 ### Response #### Success Response (200) - **result** (boolean) - Returns true if the string starts with the prefix, false otherwise. #### Response Example { "result": true } ``` -------------------------------- ### Initialize and Configure BasePushService Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/remotenotification/BasePushService.html Demonstrates how to initialize the push service with an application context and API key, and how to configure push settings. ```kotlin val pushService = BasePushService() pushService.init(application, "your-api-key") pushService.setEnableAutoMessageHandling(true) pushService.setPersistedNotification(true) ``` -------------------------------- ### Kotlin: Get Drawing Time Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/onboarding/onboarding/com.sap.cloud.mobile.fiori.onboarding/-action-bar-contribution-screen/index.html Gets the time elapsed since the view started drawing. This can be used for performance profiling or animation timing. ```kotlin open fun getDrawingTime(): Long ``` -------------------------------- ### POST /build Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/onboarding/onboarding/com.sap.cloud.mobile.fiori.onboarding.ext/-activation-screen-settings/-builder/build.html Initializes and returns the activation screen settings object for the application. ```APIDOC ## POST /build ### Description Builds and returns the activation screen settings configuration object. ### Method POST ### Endpoint /build ### Parameters None ### Request Example {} ### Response #### Success Response (200) - **ActivationScreenSettings** (object) - The configured activation screen settings instance. #### Response Example { "status": "success", "data": { "settings": "initialized" } } ``` -------------------------------- ### Get Slice of EntryList from Start Index Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kotdoc/odata/kotlin-odata/com.sap.cloud.mobile.kotlin.odata/-entity-container-map/-entry-list/index.html Returns a new EntityContainerMap.EntryList containing elements from a specified start index (inclusive) to the end of the list. ```kotlin fun slice(start: Int): EntityContainerMap.EntryList ``` -------------------------------- ### POST /services/start Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/wearable-core/wearable-core/com.sap.cloud.mobile.wearable.fnd.services/-wearable-service-initializer/start.html Initializes and starts a collection of wearable services using the provided application context and configuration. ```APIDOC ## POST /services/start ### Description Starts the specified wearable services within the given application context, applying a global configuration bundle to each service. ### Method POST ### Endpoint /services/start ### Parameters #### Request Body - **context** (Context) - Required - The application context for the service lifecycle. - **services** (List) - Required - The list of services to be initialized. - **bundleConfig** (Bundle.() -> Unit) - Optional - A lambda function to configure the global bundle properties for each service. ### Request Example { "context": "ApplicationContext", "services": ["ServiceA", "ServiceB"], "bundleConfig": "{ bundle.putInt('timeout', 5000) }" } ### Response #### Success Response (200) - **status** (string) - Indicates that the services have been started successfully. #### Response Example { "status": "success" } ``` -------------------------------- ### Start Onboarding with Discovery Service Email (Kotlin) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/onboarding/onboarding/com.sap.cloud.mobile.onboarding.activation/-activation-action-handler/start-onboarding-with-discovery-service-email.html Executes the discovery service based user onboarding process using a provided fragment and user email. This function is intended to be called from UI components like Welcome Screen or Activation Screen. It runs on a worker thread, so direct UI calls are not permitted. It can throw an InterruptedException if the process is cancelled. ```kotlin abstract fun startOnboardingWithDiscoveryServiceEmail(fragment: Fragment, userEmail: String) ``` -------------------------------- ### Get Slice of PolygonCoordinates from Start Index Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/PolygonCoordinates.html Returns a new PolygonCoordinates list containing a portion of the original list, starting from the specified index to the end. This is a convenience method that calls slice(start, end). ```Java @NonNull() @NotNull() final PolygonCoordinates slice(int start) ``` -------------------------------- ### Initialize QRCodeReaderSettings Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/fiori/com/sap/cloud/mobile/fiori/search/qrcodereader/QRCodeReaderSettings.html Demonstrates how to instantiate the settings object, either as a new instance or by extracting configuration from an existing Android Intent. ```java QRCodeReaderSettings settings = new QRCodeReaderSettings(); QRCodeReaderSettings settingsFromIntent = new QRCodeReaderSettings(intent); ``` -------------------------------- ### HttpRequest Example - Making a GET Request Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kotdoc/odata/kotlin-odata/com.sap.cloud.mobile.kotlin.odata.http/-http-request/index.html This example demonstrates how to create an HttpRequest object, open a GET request to a specified URL, send the request, retrieve the response text, and close the request. It utilizes the HttpRequest class from the SAP Cloud Mobile Kotlin OData library. ```kotlin open fun classExample(): kotlin.Unit { val request = com.sap.cloud.mobile.kotlin.odata.http.HttpRequest(); request.open(com.sap.cloud.mobile.kotlin.odata.http.HttpMethod.GET, "http://google.com"); request.send(); val text = request.responseText; request.close(); Example.show("google.com home page text: ", text); } ``` -------------------------------- ### Download Stream Example (Java) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/DataService.html Illustrates downloading a stream associated with a media entity. This example shows how to obtain a service, create a query to find a specific video, and then initiate the stream download. ```Java public void downloadStreamExample() { MediaService service = this.getService(); DataQuery query = new DataQuery().filter(Video.label.equal("Happier")) .top(1); Video video = service.getVideo(query); ``` -------------------------------- ### Get Layout Animation Listener Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/chart/chart/com.sap.cloud.mobile.fiori.chart/-donut-chart-view/index.html Gets the Animation.AnimationListener associated with the layout animation. This listener can be used to respond to events during the animation, such as start, end, or repeat. ```Kotlin fun getLayoutAnimationListener(): Animation.AnimationListener ``` -------------------------------- ### HttpRequest Example Usage Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kotdoc/odata/kotlin-odata/com.sap.cloud.mobile.kotlin.odata.http/-http-request/index.html This example demonstrates how to use the HttpRequest class to make a GET request to a URL, retrieve the response text, and close the request. ```APIDOC ## GET Request Example ### Description This example shows how to perform a simple GET request to fetch the content of a webpage. ### Method GET ### Endpoint (Not applicable for this client-side API, URL is set directly) ### Request Body (Not applicable for GET requests) ### Request Example ```kotlin open fun classExample(): kotlin.Unit { val request = com.sap.cloud.mobile.kotlin.odata.http.HttpRequest(); request.open(com.sap.cloud.mobile.kotlin.odata.http.HttpMethod.GET, "http://google.com"); request.send(); val text = request.responseText; request.close(); Example.show("google.com home page text: ", text); } ``` ### Response #### Success Response (200) - **responseText** (String) - The HTML content of the requested URL. #### Response Example (The actual response text will be the HTML content of google.com) ``` -------------------------------- ### Initialize AnyMap.EntryList Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/AnyMap.EntryList.html Demonstrates how to instantiate a new AnyMap.EntryList, either with default settings or by specifying an initial capacity for better performance. ```java AnyMap.EntryList list = new AnyMap.EntryList(); AnyMap.EntryList sizedList = new AnyMap.EntryList(10); ``` -------------------------------- ### CloudSyncProvider Setup with Proxy Classes Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/CloudSyncProvider.html Example demonstrating how to set up the CloudSyncProvider using proxy classes for a health service. It initializes OnlineODataProvider and SQLDatabaseProvider, configures CloudSyncProvider with an encryption key, creates indexes, and then sets up the HealthService for data synchronization. ```java public void setupService() { OnlineODataProvider online = new OnlineODataProvider("HealthService", "http://health.example.com:8080"); SQLDatabaseProvider database = new SQLDatabaseProvider("HealthDB", "jdbc:h2:~/health.h2"); CloudSyncProvider offline = new CloudSyncProvider(online, database); offline.setEncryptionKey(this.dbEncryptionKey()); offline.createIndex(HealthService.patients, Patient.dateOfBirth, Patient.lastName); HealthService service = new HealthService(offline); service.downloadInGroup("PatientGroup", HealthService.patients, HealthService.appointments); service.downloadInGroup("StaffGroup", HealthService.doctors, HealthService.nurses); this.setHealthService(service); } ``` -------------------------------- ### Get Month Start Date in Kotlin Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kotdoc/odata/kotlin-odata/com.sap.cloud.mobile.kotlin.odata/-local-date/month-start.html This function returns the starting date of the month that includes the given date. It is useful for date calculations and reporting. ```Kotlin import java.time.LocalDate fun monthStart(): LocalDate { // Assuming 'this' refers to a LocalDate object in a real extension function context // For a standalone example, you might pass a LocalDate as an argument. // Example: fun monthStart(date: LocalDate): LocalDate = date.withDayOfMonth(1) return LocalDate.now().withDayOfMonth(1) } ``` -------------------------------- ### Initialize and Configure MemoryCache Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/cache/MemoryCache.html Demonstrates how to instantiate a MemoryCache, configure cost-based eviction, and finalize the configuration using the build method. ```java MemoryCache cache = new MemoryCache<>(context, 100) .maxCost(500.0) .clearOnMemoryError() .build(); ``` -------------------------------- ### Get Guid - Property Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/index-files/index-7.html Retrieves the GUID value of a property from a structure. This is used to access specific property values within a structured data object. ```java String getGuid(StructureBase) - function in com.sap.cloud.mobile.odata.Property Get the value of this property from a structure. ``` -------------------------------- ### Initialize and Configure LogService Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/logging/LogService.html Demonstrates how to initialize the LogService with an application context and API key, and how to configure logging policies and auto-upload settings. ```java LogService logService = LogService.getInstance(); logService.init(application, "your-api-key"); logService.setAutoUpload(true); logService.setLogPolicy(myLogPolicy); ``` -------------------------------- ### Get Slice of AnnotationTermList (Start Index) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/AnnotationTermList.html Returns a slice of the list starting from the specified index. This is a convenience method that calls slice(int, int). ```Java @NonNull() @NotNull() final AnnotationTermList slice(int start) ``` -------------------------------- ### Slice List by Start Index (Kotlin) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-entity-set-map/-entry-list/slice.html This function returns a sub-list from a specified start index to the end of the list. It's useful for getting a trailing portion of a list. The start index can be negative to count from the end. ```Kotlin @NonNull @NotNull fun slice(start: Int): @NotNull EntitySetMap.EntryList See slice(int, int). #### Return (see linked method). #### Parameters _start_ Start parameter. ``` -------------------------------- ### POST /CloudSyncProvider/open Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kotdoc/odata/kotlin-odata/com.sap.cloud.mobile.kotlin.odata/-cloud-sync-provider/open.html Initializes the CloudSyncProvider, creates the local database, and performs initial synchronization if required. ```APIDOC ## POST /CloudSyncProvider/open ### Description Opens the provider instance. This method ensures the local database exists and triggers communication with the backend system if metadata is missing or if specific sync flags (forceUploadOnUserSwitch, forceDownloadOnUserSwitch) are enabled. ### Method POST ### Endpoint /CloudSyncProvider/open ### Parameters None ### Request Example {} ### Response #### Success Response (200) - **status** (string) - Indicates successful initialization of the provider. #### Response Example { "status": "success" } ``` -------------------------------- ### Initialize FlowOptions with Full Configuration Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/flowsv2/com/sap/cloud/mobile/flowv2/ext/FlowOptions.html This snippet demonstrates the primary constructor for FlowOptions, allowing full customization of the onboarding flow including PKCE, timeout behavior, and UI style settings. ```java FlowOptions options = new FlowOptions(infoMessageOption, activationOption, false, false, true, true, 1, true, true, true, onboardingOrientation, oAuthAuthenticationOption, signedQRCodeOption, true, true, false, true); ``` -------------------------------- ### Get Slice of AnnotationTermMap.EntryList (Kotlin) Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-annotation-term-map/-entry-list/index.html Extracts a portion of the list as a new list, defined by start and end indices. The start index is inclusive, and the end index is exclusive. Overloads allow specifying only the start index. ```kotlin @NonNull @NotNull fun slice(start: Int): @NotNull AnnotationTermMap.EntryList ``` ```kotlin @NonNull @NotNull fun slice( start: Int, end: Int): @NotNull AnnotationTermMap.EntryList ``` -------------------------------- ### GET /getValue Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-guid-value/get-value.html Retrieves the wrapped GUID value from the object instance. ```APIDOC ## GET /getValue ### Description Returns the wrapped GUID value contained within the object. ### Method GET ### Endpoint /getValue ### Parameters None ### Request Example N/A ### Response #### Success Response (200) - **value** (GUID) - The wrapped GUID value. #### Response Example { "value": "53c64b93-e514-4091-8d67-6b927a3cd65b" } ``` -------------------------------- ### Initialize SharedDeviceService Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/foundation/foundation/com.sap.cloud.mobile.foundation.settings/-shared-device-service/index.html Demonstrates how to instantiate the SharedDeviceService with an optional application key and an encryption key listener for secure offline database setup. ```kotlin val service = SharedDeviceService(applicationKeyParameter = "your-app-key", encryptionKeyReadyListener = object : ServiceListener { override fun onResult(result: String) { // Handle generated encryption key } override fun onError(error: Throwable) { // Handle error } }) ``` -------------------------------- ### GET /slice Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-entity-type-list/slice.html Retrieves a subset of the EntityTypeList starting from a specified index. ```APIDOC ## GET /slice ### Description Returns a slice of the list from the start index to the end of the list. ### Method GET ### Endpoint /slice ### Parameters #### Query Parameters - **start** (Int) - Required - The zero-based starting index (inclusive). ### Request Example GET /slice?start=0 ### Response #### Success Response (200) - **EntityTypeList** (Object) - A subset of the original list. #### Response Example { "items": ["entity1", "entity2"] } ``` -------------------------------- ### Initialize and Use UsageService in Kotlin Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/foundation/foundation/com.sap.cloud.mobile.foundation.usage/-usage-service/index.html Demonstrates how to initialize the UsageService and use its event logging functions. It shows how to start and end events with a specific key and log user interactions or view displays. This requires the SDKInitializer to be set up. ```kotlin SDKInitializer.getService(UsageService::class)?.also { srv.eventStart(key = EVENT_KEY, info = AppUsageInfo().screen(VIEW_ID)) srv.eventBehaviorUserInteraction( viewId = VIEW_ID, action = item.title.toString() ) srv.event(key = EVENT_KEY, info = AppUsageInfo().action("test_event_action")) srv.eventEnd(key = EVENT_KEY, info = AppUsageInfo().action("test_event_end_action")) } ``` -------------------------------- ### GET /slice Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-data-context/-compact-item-list/slice.html Retrieves a subset of the list starting from a specified index. ```APIDOC ## GET /slice ### Description Returns a slice of the list from the specified start index to the end of the list. ### Method GET ### Endpoint /slice ### Parameters #### Query Parameters - **start** (Int) - Required - The starting index of the slice. ### Request Example GET /slice?start=0 ### Response #### Success Response (200) - **data** (CompactItemList) - The sliced list object. #### Response Example { "items": ["item1", "item2"] } ``` -------------------------------- ### Demo Mode Execution Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/onboarding/com/sap/cloud/mobile/onboarding/launchscreen/WelcomeScreenActionHandlerImpl.html Runs the demo mode from the welcome screen. ```APIDOC ## void startDemoMode(Fragment fragment) ### Description Runs the demo mode from the welcome screen. This callback is executed on a worker thread. ### Method INTERNAL_METHOD ### Parameters #### Path Parameters - **fragment** (Fragment) - Required - The caller welcome screen fragment. ### Request Example startDemoMode(myFragment); ``` -------------------------------- ### GET /slice Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-annotation-map/-entry-list/slice.html Retrieves a slice of the EntryList starting from a specified index. ```APIDOC ## GET /slice ### Description Returns a slice of the list starting from the provided index to the end of the list. ### Method GET ### Endpoint /slice ### Parameters #### Query Parameters - **start** (Int) - Required - The zero-based starting index. ### Response #### Success Response (200) - **EntryList** (Object) - A subset of the original list starting from the specified index. ``` -------------------------------- ### GET /isBrowserInstalled Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/ext/SDKCustomTabsLauncher.Companion.html Verifies if a specific preferred browser is installed on the device. ```APIDOC ## GET isBrowserInstalled ### Description Checks if the specified preferredBrowser is currently installed on the device. ### Method GET ### Endpoint SDKCustomTabsLauncher.Companion.isBrowserInstalled(Context context, BrowserDetails preferredBrowser) ### Parameters #### Path Parameters - **context** (Context) - Required - The application context. - **preferredBrowser** (BrowserDetails) - Required - The browser details to check. ### Response #### Success Response (200) - **Boolean** (Boolean) - Returns true if the browser is installed, false otherwise. ### Response Example { "result": true } ``` -------------------------------- ### Initialize QRCodeConfirmScreen Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/onboarding/com/sap/cloud/mobile/fiori/onboarding/QRCodeConfirmScreen.html Demonstrates how to instantiate the QRCodeConfirmScreen class and initialize it with specific settings. This is typically used during the onboarding process to configure the UI state. ```java QRCodeConfirmScreen screen = new QRCodeConfirmScreen(context); QRCodeConfirmSettings settings = new QRCodeConfirmSettings(); // Configure settings object here screen.initialize(settings); ``` -------------------------------- ### GET /hasBrowserInstalled Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/ext/SDKCustomTabsLauncher.Companion.html Checks if any web browser is currently installed on the device. ```APIDOC ## GET hasBrowserInstalled ### Description Checks if any browser is installed on the device, regardless of whether it supports Custom Chrome Tabs (CCT). ### Method GET ### Endpoint SDKCustomTabsLauncher.Companion.hasBrowserInstalled(Context context) ### Parameters #### Path Parameters - **context** (Context) - Required - The application context. ### Response #### Success Response (200) - **Boolean** (Boolean) - Returns true if at least one browser is installed, false otherwise. ### Response Example { "result": true } ``` -------------------------------- ### Activity Launching and Permission Rationale Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/flowsv2/flowsv2/com.sap.cloud.mobile.flowv2.steps/-o-auth-fragment/index.html Methods for starting activities, starting activities for results, and checking permission rationale. ```APIDOC ## shouldShowRequestPermissionRationale ### Description Checks if the user has seen a rationale for a permission before. ### Method `shouldShowRequestPermissionRationale` ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - **p0** (String) - Required - The permission to check. ### Request Example ```json { "p0": "android.permission.CAMERA" } ``` ### Response #### Success Response (200) - **result** (Boolean) - True if the rationale should be shown, false otherwise. ### Response Example ```json { "result": true } ``` ## startActivity ### Description Starts a new activity. ### Method `startActivity` ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - **p0** (Intent) - Required - The intent to start the activity. - **p1** (Bundle) - Optional - Additional options for launching the activity. ### Request Example ```json { "p0": { "action": "android.intent.action.VIEW", "data": "http://www.example.com" }, "p1": { "animation": "slide_in_left" } } ``` ### Response #### Success Response (200) - None (void method) ## startPostponedEnterTransition ### Description Starts the postponed enter transition after shared elements have been laid out. ### Method `startPostponedEnterTransition` ### Parameters #### Path Parameters - None #### Query Parameters - None #### Request Body - None ### Request Example ```json {} ``` ### Response #### Success Response (200) - None (void method) ``` -------------------------------- ### WelcomeScreenActionHandler Methods Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/onboarding/onboarding/com.sap.cloud.mobile.onboarding.launchscreen/-welcome-screen-action-handler/index.html Methods for initiating onboarding and demo workflows within the application. ```APIDOC ## void startDemoMode(Fragment fragment) ### Description Runs the demo mode from the welcome screen. ### Parameters - **fragment** (Fragment) - Required - The current UI fragment context. --- ## void startOnboardingWithDiscoveryServiceEmail(Fragment fragment, String userEmail) ### Description Executes the discovery service based user onboarding process using the provided email. ### Parameters - **fragment** (Fragment) - Required - The current UI fragment context. - **userEmail** (String) - Required - The email address for discovery service lookup. --- ## void startStandardOnboarding(Fragment fragment) ### Description Executes the standard user onboarding process. ### Parameters - **fragment** (Fragment) - Required - The current UI fragment context. ``` -------------------------------- ### getMessagePaddingStart Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/fiori/com/sap/cloud/mobile/fiori/indicator/FioriLinearProgressBar.html Gets the start padding of the message area in the progress indicator. ```APIDOC ## getMessagePaddingStart ### Description Gets the start padding of the message area in the progress indicator. ### Method GET ### Endpoint /websites/help_sap_doc_f53c64b93e5140918d676b927a3cd65b_cloud_en-us_docs-en_reference/getMessagePaddingStart ### Parameters None ### Response #### Success Response (200) - **paddingStart** (int) - The start padding value. ``` -------------------------------- ### Initialize ConfigurationLoader Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/configurationprovider/ConfigurationLoader.html Demonstrates how to instantiate the ConfigurationLoader with a context and callback handler. This setup allows the loader to begin processing configuration providers. ```java ConfigurationLoader loader = new ConfigurationLoader(context, callback); ``` -------------------------------- ### Get Slice of EntryList from Start Index in Kotlin Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kotdoc/odata/kotlin-odata/com.sap.cloud.mobile.kotlin.odata/-entity-type-map/-entry-list/index.html Returns a new list containing elements from the specified 'start' index (inclusive) to the end of the original EntityTypeMap.EntryList. ```kotlin fun slice(start: Int): EntityTypeMap.EntryList ``` -------------------------------- ### Initialize PropertyList Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/PropertyList.html Demonstrates how to instantiate a new PropertyList, optionally specifying an initial capacity for performance optimization. ```Java PropertyList list = new PropertyList(); PropertyList listWithCapacity = new PropertyList(10); ``` -------------------------------- ### Method: execute Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/onboarding/com/sap/cloud/mobile/onboarding/qrcodereader/QRCodeReaderActionHandlerOnboardingTask.html Executes the onboarding task. ```APIDOC ## Method: execute ### Description Executes the onboarding task. ### Method `void execute()` ### Parameters None ### Request Example None ### Response #### Success Response (200) None #### Response Example None ``` -------------------------------- ### GET /slice Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-complex-type-map/-entry-list/slice.html Retrieves a slice of the EntryList using start and end indices. ```APIDOC ## GET /slice ### Description Returns a slice of the list from a specified start index to an end index. ### Method GET ### Endpoint /slice ### Parameters #### Query Parameters - **start** (Int) - Required - Zero-based starting index (inclusive), or negative for relative indexing. - **end** (Int) - Optional - Zero-based ending index (exclusive), or negative for relative indexing. ### Request Example { "start": 0, "end": 5 } ### Response #### Success Response (200) - **EntryList** (Object) - A subset of the original list. #### Response Example { "items": ["entry1", "entry2"] } ``` -------------------------------- ### Instantiate and Open SecureStoreCache Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/foundation/foundation/com.sap.cloud.mobile.foundation.cache/-secure-store-cache/index.html Demonstrates how to initialize a SecureStoreCache instance with a specific size and store name, and how to open it using an encryption key generated via EncryptionUtil. ```java byte[] myEncryptionKey = EncryptionUtil.getEncryptionKey("aliasForMySecureCache", myPasscode); SecureStoreCache cache = new SecureStoreCache<>(context, 32, "myStoreName"); try { cache.open(myEncryptionKey); } catch (OpenFailureException ex) { // Handle incorrect key } ``` -------------------------------- ### GET /getOnlineSetup Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-cloud-sync-provider/get-online-setup.html Retrieves the online setup status for internal proxy services. ```APIDOC ## GET /getOnlineSetup ### Description This endpoint returns the online setup status, intended for internal use by proxy services. ### Method GET ### Endpoint /getOnlineSetup ### Parameters None ### Request Example GET /getOnlineSetup ### Response #### Success Response (200) - **status** (Boolean) - Returns true if online setup is active, false otherwise. #### Response Example { "status": true } ``` -------------------------------- ### GET /api/components/cell/startPadding Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/fiori-compose-ui/fiori-compose-ui/com.sap.cloud.mobile.fiori.compose.keyvaluecell.ui/-fiori-key-value-cell-attribute/start-padding.html Retrieves the internal start padding configuration for a cell component. ```APIDOC ## GET /api/components/cell/startPadding ### Description Returns the current state of the internal start padding for the cell content. ### Method GET ### Endpoint /api/components/cell/startPadding ### Parameters None ### Request Example GET /api/components/cell/startPadding ### Response #### Success Response (200) - **padding** (Dp) - The current start padding value in density-independent pixels. #### Response Example { "padding": "16.dp" } ``` -------------------------------- ### Usage Class Initialization and Reporter Management Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/foundation/foundation/com.sap.cloud.mobile.foundation.usage/-usage/index.html Demonstrates how to instantiate the Usage class using a UsageStore and manage UsageReporter instances. These methods allow for dynamic registration and retrieval of reporters based on target IDs. ```kotlin val usage = Usage(usageStore) usage.registerReporter(myReporter) val reporter = usage.getReporter("target_123") usage.unregisterReporter("target_123") ``` -------------------------------- ### GET getMessagePaddingStart Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/fiori/fiori/com.sap.cloud.mobile.fiori.indicator/-fiori-circular-progress-bar/get-message-padding-start.html Retrieves the start padding value for a message component in pixels. ```APIDOC ## getMessagePaddingStart ### Description Retrieves the current start padding value for a message component, measured in pixels. ### Method GET ### Endpoint getMessagePaddingStart() ### Parameters None ### Request Example N/A ### Response #### Success Response (200) - **padding** (Int) - The start padding value in pixels. #### Response Example { "padding": 16 } ``` -------------------------------- ### POST /download/query/from Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/kdoc/odata/odata/com.sap.cloud.mobile.odata/-download-query-list/from.html Initializes a DownloadQueryList object from a provided list of DownloadQuery instances. ```APIDOC ## POST /download/query/from ### Description Converts a collection of DownloadQuery objects into a formal DownloadQueryList container. ### Method POST ### Endpoint /download/query/from ### Parameters #### Request Body - **list** (List) - Required - A list of download query objects to be processed. ### Request Example { "list": [ { "id": "123", "url": "https://example.com/file" } ] } ### Response #### Success Response (200) - **DownloadQueryList** (Object) - The resulting list container. #### Response Example { "status": "success", "data": { "items": [...] } } ``` -------------------------------- ### Initialize ByteList Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/ByteList.html Demonstrates how to instantiate a new ByteList, optionally specifying an initial capacity for performance optimization. ```java ByteList list = new ByteList(); ByteList sizedList = new ByteList(1024); ``` -------------------------------- ### GET /StructureTypeList/slice Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/StructureTypeList.html Retrieves a subset of the list based on start and end indices. ```APIDOC ## GET /StructureTypeList/slice ### Description Returns a slice of this list from index start (inclusive) to index end (exclusive). ### Method GET ### Endpoint /StructureTypeList/slice ### Parameters #### Query Parameters - **start** (int) - Required - Zero-based starting index (inclusive). - **end** (int) - Optional - Zero-based ending index (exclusive). ### Response #### Success Response (200) - **result** (StructureTypeList) - A slice of the original list. #### Response Example { "result": [{"id": 2}] } ``` -------------------------------- ### Initialize MobileService with SDKInitializer Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/foundation/com/sap/cloud/mobile/foundation/mobileservices/SDKInitializer.html Demonstrates how to start the mobile service framework using the SDKInitializer. This should be called during the application startup process to register services and provide necessary authentication keys. ```kotlin SDKInitializer.start(application, mobileServices, "your_api_key", "your_pub_key"); ``` -------------------------------- ### GET /SimpleTypeMap.EntryList/slice Source: https://help.sap.com/doc/f53c64b93e5140918d676b927a3cd65b/Cloud/en-US/docs-en/reference/android/javadoc/odata/com/sap/cloud/mobile/odata/SimpleTypeMap.EntryList.html Returns a slice of the list from a start index to an end index. ```APIDOC ## GET /SimpleTypeMap.EntryList/slice ### Description Return a slice of this list from index `start` (inclusive) to index `end` (exclusive). ### Method GET ### Endpoint /SimpleTypeMap.EntryList/slice ### Parameters #### Query Parameters - **start** (int) - Required - Zero-based starting index (inclusive). - **end** (int) - Optional - Zero-based ending index (exclusive). ### Request Example GET /SimpleTypeMap.EntryList/slice?start=0&end=5 ### Response #### Success Response (200) - **slice** (SimpleTypeMap.EntryList) - A slice of the original list. #### Response Example { "slice": [...] } ```