Professional Documents
Culture Documents
Enterprise Mobility Management With Android For Work
Enterprise Mobility Management With Android For Work
Enterprise Mobility Management With Android For Work
Management
with
whoami
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Briefly
R&D
Branches
Offices in Europe, MEA, and
Asia
Statistics
One of the fastest growing
companies in Middle East,
Africa, and Europe
DarkBlue Systems
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
agenda
what is EMM?
case study - sample project developed by DarkBlue
what is Android for Work?
develop a management app
communication with EMM
develop App for Work
Google EMM API
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Rim KHAZHIN
why MDM?
security policy
data leak prevention
app & settings management
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
useful scenarios
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
root access?
compile from source?
manufacturers MDM API
android Device Administration API
android for Work
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
root access?
version-specific
device-specific
cant do bulk provisioning
security compromise
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
compile source?
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Rim KHAZHIN
hardware control
application management
Install application (silent)
Remove application (silent)
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
case studies
railway company
5000 devices
used by train drivers and dispatch
mixed brands: Samsung, Huawei, General Mobile
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
1000 devices
fully locked!
single app
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
education project
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
education project
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
project requirements
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
big challenge
MDM is an app
protect MDM
undetectable, unstoppable, unremovable
prevent rooting
detect if rooted
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
if permission removed!
DeviceAdminReceiver.onDisabled()
disable accounts
show warning
notify system administrator
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Rim KHAZHIN
Rim KHAZHIN
modes of operation
Rim KHAZHIN
Rim KHAZHIN
Rim KHAZHIN
Rim KHAZHIN
disable accounts
remove work profile
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon San Francisco 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
app restrictions
AppConfig community
same configurations for all EMMs
backend service configuration: server URL, port, use SSL,
group/tenant code
user configuration: username, email, domain
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Rim KHAZHIN
NFC provisioning
Rim KHAZHIN
NFC provisioning
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
since Android M
login with Google account of a managed domain
DPC is automatically downloaded from Google Play
DPC runs automatically
DPC provisions profile
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
key points
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
provision device
onProfileProvisioningComplete
get User name (Google account)
Rim KHAZHIN
Settings.Global
KeyGuard settings
disable app installing/uninstalling
disable screenshot, status bar
disable outgoing calls and sms
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Rim KHAZHIN
DevicePolicyManager class
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
management API
DevicePolicyManager class
UserManager class
Settings.Global
Settings.Secure
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon San Francisco 2016
Rim KHAZHIN
sample protocol
device-initiated operation
use push notification for server-initiated operation
Rim KHAZHIN
device activation
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
status update
request:
{device_id: ,
device_info: {} }
response:
{status:1}
{status:1, commands_pending:2}
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
get commands
request:
{device_id: }
response:
{command_type: 3, param1: 0,
param2: com.btt.eciton }
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
microservices
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
microservice workflow
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
background services
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
managed profile
information security
separate personal data and apps from corporate
created by DPC
controlled by administrator (via DPC)
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
approve Apps
login as Google Apps super admin
Rim KHAZHIN
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
enterprise app
publish on Google Play for Work
subject to approval by company admin
volume purchase
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
restrictions = settings
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
email account
vpn account
URL blacklist
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
managed by administrator
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
read/update settings
onResume
on broadcast
screen pinning
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
compatibility requirements
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
file sharing
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
content URI
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
res/xml/filepaths.xml
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
pm list users
am start --user
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
COSU
kiosk
point of sale
ticket printing
enterprise app tablet
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
screen pinning
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
lockTask
Activity.startLockTask()
Activity.stopLockTask()
onResume, onPause
DevicePolicyManager.isLockTaskPermitted(pkg)
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
if_whitelisted
always
normal
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
DevicePolicyManager.setLockTaskPackages()
called by EMM
or DPC app
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon San Francisco 2016
Rim KHAZHIN
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
Enterprise Mobility Management with Android for Work, AnDevCon Boston 2016
Rim KHAZHIN
conclusion
Rim KHAZHIN
resources
http://darkbluesystems.com/emm/
Enterprise Mobility Management with Android for Work, AnDevCon San Francisco 2016
Rim KHAZHIN
questions?
http://google.com/+RimKhazhin
Enterprise Mobility Management with Android for Work, AnDevCon San Francisco 2016
Rim KHAZHIN