2. Enterprises and Mobiles
• Every employee use mobile, most of them
migrating to smart-phones.
• Big enterprises’ IT departments buy mobiles in
bulk and issue them to employees.
• Smartphone as business phone : Workplace
acceptance?
3. Workplace Acceptance of a mobile
phone
• Personal needs?
• Social needs?
• Productivity needs?
4. Workplace Acceptance of a mobile
phone
• Personal needs?
• Social needs?
• Productivity needs?
• IT department
requirements?
5. What they demand from your phone?
• Data security
• Device management
• Applications
7. Device Management
• Registering different devices in company’s
network
• Specific security policies for organization
• User support
• Keeping an eye
19. Device Administration API
• Password policy
• Remote wipe
• Disable Camera
• Enforced data encryption
• Remote lock
20. Show me the API’s
• DeviceAdminReceiver
• DevicePolicyManager
• DeviceAdminInfo
21. DeviceAdminReceiver
• Broadcast Receiver to receive the raw system
events
• Must include a subclass of this receiver
• Action : DEVICE_ADMIN_ENABLED
• Permission : BIND_DEVICE_ADMIN
• Handles the event when user “enables” the
admin application
23. To Enable the device admin app
Intent intent = new
Intent(DevicePolicyManager.ACTION_ADD_DEVICE_ADMIN);
intent.putExtra(DevicePolicyManager.EXTRA_DEVICE_ADMIN,
adminReceiverObject);
intent.putExtra(DevicePolicyManager.EXTRA_ADD_EXPLANATI
ON,
“Some explanation.");
startActivityForResult(intent, RESULT_ENABLE);
24. DeviceAdminInfo : Meta data : usage
policies
<limit-password />
<reset-password />
<force-lock />
<wipe-data />
<expire-password />
<encrypted-storage />
25. public class SampleAdmin extends DeviceAdminReceiver {
@Override
public void onEnabled(Context context, Intent intent) {
}
@Override
public CharSequence onDisableRequested(Context context, Intent intent) {
return “Custom message ";
}
@Override
public void onDisabled(Context context, Intent intent) {
}
@Override
public void onPasswordChanged(Context context, Intent intent) {
}
}
26. DevicePolicyManager
• To manage policies
• Can be related to one or more admin receivers
DevicePolicyManager objDPM =
(DevicePolicyManager)getSystemService(Conte
xt.DEVICE_POLICY_SERVICE);
objDevicePolicyManager.
isAdminActive(objDeviceAdminSample)
27. DevicePolicyManager
• To set all password policies
• To perform device lock
• To perform data wipe
Intent intent = new
Intent(DevicePolicyManager.ACTION_SET_NEW_PASSWORD);
startActivity(intent);
objDPM.setPasswordQuality(objDeviceAdminReceiver,
DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC);
long timeMs =1000 *5 *60;// 5 minutes
objDPM.setMaximumTimeToLock(objDeviceAdminReceiver, timeMs);
28. • Lock now :
objDevicePolicyManager.lockNow();
• Data wipe :
objDevicePolicyManager.wipeData(0);
//argument currently must be zero