Skip to content

Command Line Interface and APIs for Surelock

Oct 22, 2013 | 42Gears Team

Applies to:
Product SureLock
Platform Android

Surelock uses a BroadcastReceiver to allow 3rd party applications to send specific commands to SureLock. Commands can be send using Intent (See examples below). To execute any command, Administrator password is necessary.

SureLock API

exit_surelock – This command exits the device from lock down mode.

public synchronized void exitSurelock()

{

/* Intent Action MUST be 'com.gears42.surelock.COMMUNICATOR' */

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

/* the command to execute is 'exit_surelock' */

intent.putExtra("command","exit_surelock");

/* optional parameter to identify the sender application */

intent.putExtra("sender", "com.gears42.test.kill_surelock");

/* SureLock's password. Command will NOT execute if password mismatches */

intent.putExtra("password", editText.getText().toString());

intent.setPackage("com.gears42.surelock");

this.sendBroadcast(intent);


}

apply_settings – Apply SureLock settings using XML data.

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","apply_settings");

intent.putExtra("sender", context.getPackageName()); // optional intent.putExtra("password", surelockPassword);

intent.putExtra("setting_xml", surelockSettingFileContents);

intent.setPackage("com.gears42.surelock");

context.sendBroadcast(intent);

change_password – Change SureLock password required to enter into Admin Settings.

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","change_password");

intent.putExtra("sender", context.getPackageName()); // optional

intent.putExtra("password", surelockPassword);

intent.putExtra("new_password", newSureLockPassword);

intent.setPackage("com.gears42.surelock");

context.sendBroadcast(intent);

force_apply_settings – force applies SureLock settings.

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","force_apply_settings");

intent.putExtra("sender", context.getPackageName()); // optional

intent.putExtra("password", surelockPassword);

intent.putExtra("settings_path", pathToSurelockSettingsFile);

intent.setPackage("com.gears42.surelock");

context.sendBroadcast(intent);

reset_idletimeout – resets idle timeout.

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","reset_idletimeout");

intent.putExtra("sender", context.getPackageName()); // optional

intent.putExtra("password", surelockPassword);

intent.setPackage("com.gears42.surelock");

context.sendBroadcast(intent);

activate – activates SureLock license.

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","activate");

intent.putExtra("sender", context.getPackageName()); // optional

intent.putExtra("activation_code",activationcode);

intent.putExtra("password", surelockPassword);

intent.setPackage("com.gears42.surelock");

context.sendBroadcast(intent);

deactivate – deactivates SureLock license.

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","deactivate");

intent.putExtra("sender", context.getPackageName()); // optional

intent.putExtra("password", surelockPassword);

intent.setPackage("com.gears42.surelock");

context.sendBroadcast(intent);

forceknox – forces the user to activate KNOX

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","force_knox");

intent.putExtra("sender", context.getPackageName()); // optional

intent.putExtra("password", surelockPassword);

intent.setPackage("com.gears42.surelock");

context.sendBroadcast(intent);

hidebottombar – hides bottom bar of the device

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","hidebottombar");

intent.putExtra("sender", context.getPackageName()); // optional

intent.putExtra("password", surelockPassword);

intent.setPackage("com.gears42.surelock");

context.sendBroadcast(intent);

showbottombar – shows bottom bar of the device

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","showbottombar");

intent.putExtra("sender", context.getPackageName()); // optional

intent.putExtra("password", surelockPassword);

intent.setPackage("com.gears42.surelock");

context.sendBroadcast(intent);

add_application – adds a new application to the allowed list (application should already be installed on the device)

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","add_application");

intent.putExtra("sender",context.getPackageName());

intent.putExtra("password",surelockPassword);

intent.putExtra("package_name",applicationPackageName);

intent.putExtra("label",applicationLabel); // optional

intent.putExtra("icon",applicationIcon); // optional

intent.putExtra("app_password",applicationPassword); // optional

intent.putExtra("hide_icon",True/False); // optional

intent.putExtra("launch_at_startup",True/False); // optional

intent.putExtra("restart_app_on_relaunch",True/False); // optional
 
intent.putExtra("clear_app_data",True/False); // optional

intent.putExtra("idle_timeout",value); // optional

intent.setPackage("com.gears42.surelock");

sendBroadcast(intent);

intent.putExtra("blocked_windows",childwindow1,childwindow2,childwindow3); // optional

intent.putExtra("landscape_position",0/1); // optional

intent.putExtra("portrait_position",0/1); // optional

remove_ application – removes application from the allowed list

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","remove_application");

intent.putExtra("sender",context.getPackageName());

intent.putExtra("password",surelockPassword);

intent.putExtra("package_name",applicationPackageName);

intent.setPackage("com.gears42.surelock");

sendBroadcast(intent);

wifi_settings – applies WiFi settings on the device

final Intent intent = new Intent("com.gears42.surelock.COMMUNICATOR");

intent.putExtra("command","wifi_settings");

intent.putExtra("sender",context.getPackageName());

intent.putExtra("password",surelockPassword);

intent.putExtra("ssid",wifiSSID);

intent.putExtra("wifi_password",wifiPassword);

intent.putExtra("security_type",securityType);

intent.setPackage("com.gears42.surelock");
sendBroadcast(intent);

SureLock Command Line Options

Examples:

To add an application – 

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e password 0000 -e command add_application -e package_name <package name>-e label<app name>-e icon </sdcard/images/image1.png>-e app_password <0000>-e hide_icon <false> -e launch_at_startup <true> -e restart_app_on_relaunch <true> -e blocked_windows <childwindow1,childwindow2> -e idle_timeout <milliseconds> com.gears42.surelock

To remove an application – 

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e password <0000> -e command remove_application -e package_name <package name> com.gears42.surelock

To configure Wi-Fi Settings –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e password <0000> -e command wifi_settings -e clear_saved_network <true> -e ssid <SSID name> -e wifi_password <wifi password>-e security_type <wpa> com.gears42.surelock

To change Password –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e "command" "change_password" -e "password" "0000" -e "new_password" "1111" com.gears42.surelock

To exit SureLock –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e "password" "0000" -e "command" "exit_surelock" com.gears42.surelock

To force apply changes –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e "command" "force_apply_settings" -e "password" "0000" -e "settings_path" "/sdcard/SureLock.settings" com.gears42.surelock

To reset Idle Timeout –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e "command" "reset_idletimeout" -e "password" "0000" com.gears42.surelock

To activate SureLock License –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e "command" "activate" -e "password" "0000"  -e "activation_code" "Enter Code Here" com.gears42.surelock

To deactivate SureLock License –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e "command" "deactivate" -e "password" "0000" com.gears42.surelock

To force the user to activate KNOX –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e "password"  "0000" -e "command" "force_knox" com.gears42.surelock

To hide bottom bar of the device –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e "command" "hidebottombar" -e "password" "0000" com.gears42.surelock

To show Bottom bar of the device –

am broadcast -a com.gears42.surelock.COMMUNICATOR -n com.gears42.surelock/com.gears42.surelock.service.SureLockCommunicator -e "command" "showbottombar" -e "password" "0000" com.gears42.surelock

 

To know more, visit https://www.42gears.com or contact us on info@42gears.com

 

Subscribe for our free newsletter

Thank you! you are successfully subscribed.
newsletter

Exclusive News and Updates on Enterprise Mobility!

* I consent to receive newsletters via email from 42Gears and its Affiliates.
Please agree
* I have reviewed and agreed to 42Gears Privacy Policy and Terms of Use prior to subscribing and understand that I may change my preference or unsubscribe at any time.
Please agree
Please verify captcha
Please enter a valid official email