The Samsung Knox Customization SDK is a comprehensive set of tools that lets you develop purpose-built devices for vertical markets. For example, you can develop informational kiosks for hospitality, in-flight entertainment systems for airlines, or point-of-sale devices for the retail industry.
With the Knox Customization SDK, you can develop apps that customize the end user experience on Samsung devices. You can control what apps users can access, and fully customize the device settings and operating system behavior for a particular app. You can lock down a device to provide only one (or a few) apps, and prevent end users from leaving these apps to use the underlying device operating system or other pre-installed apps. This allows you to fully customize devices to provide a controlled environment for targeted applications.
This guide is intended for Systems Integrators who develop apps for enterprises. It assumes that you are already familiar with the Android programming environment and Java programming language.
To help you understand what you can do with the Knox Customization SDK, let us look at its APIs:
For more details about what API features are available, see the Knox Customization SDK API Reference.
The Knox Customization APIs are grouped into the three Java classes above: ProKioskManager, SettingsManager, and SystemManager. You request access to each Java class by adding a Samsung-specific permission to your app’s Android manifest file. These permissions are granted when the app is installed on a device. Whenever an app calls a Customization method, the system checks if the app has the appropriate permission to do so.
The key areas of a device that you can control in ProKiosk mode are:
ProKiosk mode is an evolution of the kiosk mode introduced with the Knox Standard SDK. In kiosk mode, there are ways to circumvent the main app. This compromises the primary purpose of kiosk mode, which is to lock down the device. In ProKiosk mode, you can not only restrict access to a single app or set of apps, but you can also:
Version 2.7 of the Knox Customization SDK introduces new methods to the SettingsManager and SystemManager classes. For a complete list of these methods, see the Samsung Knox Customization SDK Release Notes version 2.7.
Version 2.7 introduces the setFlightModeState() method, which provides the ability to turn flight mode on or off.
Version 2.7 introduces methods that enable you to customize the home screen by adding/removing shortcuts and widgets, set lockscreen shortcuts, set auto answer incoming call abilities, and so on. The following methods are new in 2.7:
Galaxy Xcover series are ruggedized devices designed to withstand the rigours of both water and dust. This device comes with a special hardware key called Xcover key. It is an extra button that can launch specific apps, or the embedded camera app. System Integrators (SIs) can customize the Galaxy Xcover 4 key for their B2B solution.
To the existing KNOX Customization SDK version 2.7.1, the following new APIs are added to SettingsManager class specifically for Xcover 4 device:
For details, see the Knox Customization SDK API Specifications for Xcover.
Due operating system and Samsung device UI changes, the following methods and constants have been deprecated, and will not work on devices running Android Nougat or above:
Note: Some deprecated methods have no replacements; see the Knox Customization SDK API Reference for complete method descriptions.
Version 2.8 of the KNOX Customization SDK includes the following new features:
The following are the two APIs added in the SystemManager class for power on/off control:
Using these new APIs SI's can:
The following is the new API added in the SettingsManager class for brightness control:
Using this new API, it is possible to customize the screen brightness level as a value between 0 and 255, or set for auto brightness.
Knox Customization SDK v2.9 now provides the following new features, for a complete description - see the release notes.
Existing feature enhancements:
The Knox Customization SDK includes the Knox Standard SDK, which provides access to a comprehensive collection of Mobile Device Management (MDM) features. You can manage many aspects of Samsung devices to ensure that they meet enterprise requirements. You can control:
Typically, MDM vendors develop web-based MDM consoles that IT admins can use to centrally manage company devices. In this use case, the MDM consoles issue IT admin commands over-the-air to MDM apps on devices. However, when you use the Knox Customization SDK to lock down devices, you call the Knox Standard APIs from the device app, and eliminate the need for remote management.
For more details about the Knox Standard SDK, see the Knox Standard API Reference.
You can use the Knox Customization SDK to configure a device or use it in conjunction with the Knox Standard SDK. If you disable a device feature through the Knox Standard SDK, you cannot enable it through the Knox Customization SDK - the Knox Standard SDK takes precedence.