SlideShare a Scribd company logo
Using Android as a mobile business platform 
Developer experiences & best practice 
Dennis Hoppe 
Android Developer / Senior Software Architect 
Brunata Wärmemesser GmbH & Co KG 
droidcon 2014, May 8th
BACKGROUND 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
2 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter 
measuring application on an Android platform. 
Why Android? 
Flexibility & Customizability 
Hardware availability 
Open Source (B)YOD 
Smart phone users are familiar with the handling 
Growing acceptance in the market 
It works! 
In July 2012 the new counter measuring application was put into production.
BACKGROUND 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
2 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter 
measuring application on an Android platform. 
Why Android? 
Flexibility & Customizability 
Hardware availability 
Open Source (B)YOD 
Smart phone users are familiar with the handling 
Growing acceptance in the market 
It works! 
In July 2012 the new counter measuring application was put into production.
BACKGROUND 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
2 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter 
measuring application on an Android platform. 
Why Android? 
Flexibility & Customizability 
Hardware availability 
Open Source (B)YOD 
Smart phone users are familiar with the handling 
Growing acceptance in the market 
It works! 
In July 2012 the new counter measuring application was put into production.
BACKGROUND 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
2 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter 
measuring application on an Android platform. 
Why Android? 
Flexibility & Customizability 
Hardware availability 
Open Source (B)YOD 
Smart phone users are familiar with the handling 
Growing acceptance in the market 
It works! 
In July 2012 the new counter measuring application was put into production.
BACKGROUND 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
2 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter 
measuring application on an Android platform. 
Why Android? 
Flexibility & Customizability 
Hardware availability 
Open Source (B)YOD 
Smart phone users are familiar with the handling 
Growing acceptance in the market 
It works! 
In July 2012 the new counter measuring application was put into production.
BACKGROUND 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
2 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter 
measuring application on an Android platform. 
Why Android? 
Flexibility & Customizability 
Hardware availability 
Open Source (B)YOD 
Smart phone users are familiar with the handling 
Growing acceptance in the market 
It works! 
In July 2012 the new counter measuring application was put into production.
BACKGROUND 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
2 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter 
measuring application on an Android platform. 
Why Android? 
Flexibility & Customizability 
Hardware availability 
Open Source (B)YOD 
Smart phone users are familiar with the handling 
Growing acceptance in the market 
It works! 
In July 2012 the new counter measuring application was put into production.
BACKGROUND 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
2 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter 
measuring application on an Android platform. 
Why Android? 
Flexibility & Customizability 
Hardware availability 
Open Source (B)YOD 
Smart phone users are familiar with the handling 
Growing acceptance in the market 
It works! 
In July 2012 the new counter measuring application was put into production.
BACKGROUND 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
2 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter 
measuring application on an Android platform. 
Why Android? 
Flexibility & Customizability 
Hardware availability 
Open Source (B)YOD 
Smart phone users are familiar with the handling 
Growing acceptance in the market 
It works! 
In July 2012 the new counter measuring application was put into production.
BRUNATA MOBILE COUNTER METERING 
05.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
3 
A SUCCESS STORY 
Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 
1,000 mobile devices in operation in the field 
Berkeley-DB-driven persistence layer 
No data loss even after two years of productive use 
Synchronizing 200,000 to 500,000 records per day
BRUNATA MOBILE COUNTER METERING 
Dennis Hoppe . droidcon . BRUNATA München 
3 
A SUCCESS STORY 
Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 
1,000 mobile devices in operation in the field 
Berkeley-DB-driven persistence layer 
No data loss even after two years of productive use 
Synchronizing 200,000 to 500,000 records per day 
05.05.2014
BRUNATA MOBILE COUNTER METERING 
Dennis Hoppe . droidcon . BRUNATA München 
3 
A SUCCESS STORY 
Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 
1,000 mobile devices in operation in the field 
Berkeley-DB-driven persistence layer 
No data loss even after two years of productive use 
Synchronizing 200,000 to 500,000 records per day 
05.05.2014
BRUNATA MOBILE COUNTER METERING 
Dennis Hoppe . droidcon . BRUNATA München 
3 
A SUCCESS STORY 
Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 
1,000 mobile devices in operation in the field 
Berkeley-DB-driven persistence layer 
No data loss even after two years of productive use 
Synchronizing 200,000 to 500,000 records per day 
05.05.2014
BRUNATA MOBILE COUNTER METERING 
Dennis Hoppe . droidcon . BRUNATA München 
3 
A SUCCESS STORY 
Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 
1,000 mobile devices in operation in the field 
Berkeley-DB-driven persistence layer 
No data loss even after two years of productive use 
Synchronizing 200,000 to 500,000 records per day 
05.05.2014
BRUNATA MOBILE COUNTER METERING 
Dennis Hoppe . droidcon . BRUNATA München 
3 
A SUCCESS STORY 
Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 
1,000 mobile devices in operation in the field 
Berkeley-DB-driven persistence layer 
No data loss even after two years of productive use 
Synchronizing 200,000 to 500,000 records per day 
05.05.2014
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
4 
BRUNATA MOBILE COUNTER METERING 
A SUCCESS STORY 
NetWeaver 7.3 Mobile with no need of Sybase or Syclo
INTRODUCTION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
5 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
What should be considered using Android as a business platform? 
Hardware selection 
Data Storage & Databases 
App Deployment 
Performance & User Experience 
Monitoring & Troubleshooting 
Gaps in the Android Framework
INTRODUCTION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
5 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
What should be considered using Android as a business platform? 
Hardware selection 
Data Storage & Databases 
App Deployment 
Performance & User Experience 
Monitoring & Troubleshooting 
Gaps in the Android Framework
INTRODUCTION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
5 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
What should be considered using Android as a business platform? 
Hardware selection 
Data Storage & Databases 
App Deployment 
Performance & User Experience 
Monitoring & Troubleshooting 
Gaps in the Android Framework
INTRODUCTION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
5 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
What should be considered using Android as a business platform? 
Hardware selection 
Data Storage & Databases 
App Deployment 
Performance & User Experience 
Monitoring & Troubleshooting 
Gaps in the Android Framework
INTRODUCTION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
5 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
What should be considered using Android as a business platform? 
Hardware selection 
Data Storage & Databases 
App Deployment 
Performance & User Experience 
Monitoring & Troubleshooting 
Gaps in the Android Framework
INTRODUCTION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
5 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
What should be considered using Android as a business platform? 
Hardware selection 
Data Storage & Databases 
App Deployment 
Performance & User Experience 
Monitoring & Troubleshooting 
Gaps in the Android Framework
INTRODUCTION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
5 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
What should be considered using Android as a business platform? 
Hardware selection 
Data Storage & Databases 
App Deployment 
Performance & User Experience 
Monitoring & Troubleshooting 
Gaps in the Android Framework
DEVICE SELECTION CRITERIA 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
6 
HARDWARE SELECTION 
Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability 
BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) 
Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing 
Bigger is not always better 
Does the user really need a 12 inch device to work with?
DEVICE SELECTION CRITERIA 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
6 
HARDWARE SELECTION 
Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability 
BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) 
Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing 
Bigger is not always better Does the user really need a 12 inch device to work with?
DEVICE SELECTION CRITERIA 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
6 
HARDWARE SELECTION 
Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability 
BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) 
Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing 
Bigger is not always better Does the user really need a 12 inch device to work with?
DEVICE SELECTION CRITERIA 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
6 
HARDWARE SELECTION 
Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability 
BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) 
Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing 
Bigger is not always better Does the user really need a 12 inch device to work with?
DEVICE SELECTION CRITERIA 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
6 
HARDWARE SELECTION 
Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability 
BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) 
Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing 
Bigger is not always better Does the user really need a 12 inch device to work with?
DATA STORAGE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
7 
DATA STORAGE & DATABASES 
Online Scenario  Shared preferences  Property files 
Offline scenario  DBMS required  Data security 
Internal storage The data on the internal storage will be deleted if the app is uninstalled 
External storage The external storage is world readable what may cause security problems
DATA STORAGE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
7 
DATA STORAGE & DATABASES 
Online Scenario  Shared preferences  Property files 
Offline scenario  DBMS required  Data security 
Internal storage The data on the internal storage will be deleted if the app is uninstalled 
External storage The external storage is world readable what may cause security problems
DATA STORAGE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
7 
DATA STORAGE & DATABASES 
Online Scenario  Shared preferences  Property files 
Offline scenario  DBMS required  Data security 
Internal storage The data on the internal storage will be deleted if the app is uninstalled 
External storage The external storage is world readable what may cause security problems
DATA STORAGE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
7 
DATA STORAGE & DATABASES 
Online Scenario  Shared preferences  Property files 
Offline scenario  DBMS required  Data security 
Internal storage The data on the internal storage will be deleted if the app is uninstalled 
External storage The external storage is world readable what may cause security problems
DATA STORAGE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
7 
DATA STORAGE & DATABASES 
Online Scenario  Shared preferences  Property files 
Offline scenario  DBMS required  Data security 
Internal storage The data on the internal storage will be deleted if the app is uninstalled 
External storage The external storage is world readable what may cause security problems
DATABASES 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
8 
DATA STORAGE & DATABASES 
Ready to use databases for Android 
Built in SQLite + Ready to use + Part of the system -- No built-in encryption 
SQLite (JDBC) + Customizability -- Future availability not ensured 
Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications 
Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
DATABASES 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
8 
DATA STORAGE & DATABASES 
Ready to use databases for Android 
Built in SQLite + Ready to use + Part of the system -- No built-in encryption 
SQLite (JDBC) + Customizability -- Future availability not ensured 
Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications 
Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
DATABASES 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
8 
DATA STORAGE & DATABASES 
Ready to use databases for Android 
Built in SQLite + Ready to use + Part of the system -- No built-in encryption 
SQLite (JDBC) + Customizability -- Future availability not ensured 
Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications 
Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
DATABASES 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
8 
DATA STORAGE & DATABASES 
Ready to use databases for Android 
Built in SQLite + Ready to use + Part of the system -- No built-in encryption 
SQLite (JDBC) + Customizability -- Future availability not ensured 
Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications 
Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
DATABASES 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
8 
DATA STORAGE & DATABASES 
Ready to use databases for Android 
Built in SQLite + Ready to use + Part of the system -- No built-in encryption 
SQLite (JDBC) + Customizability -- Future availability not ensured 
Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications 
Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
SQLITE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
9 
DATA STORAGE & DATABASES 
Attention when using the Android SQLiteDatabase API The default behavior of Android to deal with corrupted databases is to delete them.
SQLITE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
9 
DATA STORAGE & DATABASES 
Attention when using the Android SQLiteDatabase API The default behavior of Android to deal with corrupted databases is to delete them.
SQLITE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
9 
DATA STORAGE & DATABASES 
Attention when using the Android SQLiteDatabase API The default behavior of Android to deal with corrupted databases is to delete them.
SQLITE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
10 
DATA STORAGE & DATABASES
SQLITE 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
11 
DATA STORAGE & DATABASES
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
12 
APP DEPLOYMENT 
Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing 
Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources 
MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent 
WHAT IS MISSING A certificate-based Enterprise app store architecture
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
12 
APP DEPLOYMENT 
Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing 
Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources 
MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent 
WHAT IS MISSING 
A certificate-based Enterprise app store architecture
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
12 
APP DEPLOYMENT 
Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing 
Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources 
MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent 
WHAT IS MISSING 
A certificate-based Enterprise app store architecture
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
12 
APP DEPLOYMENT 
Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing 
Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources 
MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent 
WHAT IS MISSING 
A certificate-based Enterprise app store architecture
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
12 
APP DEPLOYMENT 
Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing 
Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources 
MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent 
WHAT IS MISSING 
A certificate-based Enterprise app store architecture
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
13 
PERFORMANCE & USER EXPERIENCE 
Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations 
Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines 
Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs 
ANDROID IS A SYSTEM FOR MOBILE DEVICES 
Don‘t try to port existing desktop applications 1:1 to Android!
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
13 
PERFORMANCE & USER EXPERIENCE 
Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations 
Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines 
Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs 
ANDROID IS A SYSTEM FOR MOBILE DEVICES 
Don‘t try to port existing desktop applications 1:1 to Android!
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
13 
PERFORMANCE & USER EXPERIENCE 
Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations 
Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines 
Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs 
ANDROID IS A SYSTEM FOR MOBILE DEVICES 
Don‘t try to port existing desktop applications 1:1 to Android!
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
13 
PERFORMANCE & USER EXPERIENCE 
Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations 
Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines 
Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs 
ANDROID IS A SYSTEM FOR MOBILE DEVICES 
Don‘t try to port existing desktop applications 1:1 to Android!
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
13 
PERFORMANCE & USER EXPERIENCE 
Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations 
Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines 
Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs 
ANDROID IS A SYSTEM FOR MOBILE DEVICES 
Don‘t try to port existing desktop applications 1:1 to Android!
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
14 
MONITORING & TROUBLESHOOTING 
Implement your own UncaughtExceptionHandler 
Make use of the system-provided screenshot capabilities 
Capture the LogCat output when saving logs 
WHAT IS MISSING 
There is currently no way to capture the screen programmatically (with or without user interaction)
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
14 
MONITORING & TROUBLESHOOTING 
Implement your own UncaughtExceptionHandler 
Make use of the system-provided screenshot capabilities 
Capture the LogCat output when saving logs 
WHAT IS MISSING 
There is currently no way to capture the screen programmatically (with or without user interaction)
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
14 
MONITORING & TROUBLESHOOTING 
Implement your own UncaughtExceptionHandler 
Make use of the system-provided screenshot capabilities 
Capture the LogCat output when saving logs 
WHAT IS MISSING 
There is currently no way to capture the screen programmatically (with or without user interaction)
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
14 
MONITORING & TROUBLESHOOTING 
Implement your own UncaughtExceptionHandler 
Make use of the system-provided screenshot capabilities 
Capture the LogCat output when saving logs 
WHAT IS MISSING 
There is currently no way to capture the screen programmatically (with or without user interaction)
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
14 
MONITORING & TROUBLESHOOTING 
Implement your own UncaughtExceptionHandler 
Make use of the system-provided screenshot capabilities 
Capture the LogCat output when saving logs 
WHAT IS MISSING 
There is currently no way to capture the screen programmatically (with or without user interaction)
WHAT IS MISSING 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
15 
GAPS IN THE ANDROID FRAMEWORK 
API to manage APN settings 
Possibility to add trusted NTP servers 
Screen capture API 
Closed enterprise app store 
Enterprise app certificates
WHAT IS MISSING 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
15 
GAPS IN THE ANDROID FRAMEWORK 
API to manage APN settings 
Possibility to add trusted NTP servers 
Screen capture API 
Closed enterprise app store 
Enterprise app certificates
WHAT IS MISSING 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
15 
GAPS IN THE ANDROID FRAMEWORK 
API to manage APN settings 
Possibility to add trusted NTP servers 
Screen capture API 
Closed enterprise app store 
Enterprise app certificates
WHAT IS MISSING 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
15 
GAPS IN THE ANDROID FRAMEWORK 
API to manage APN settings 
Possibility to add trusted NTP servers 
Screen capture API 
Closed enterprise app store 
Enterprise app certificates
WHAT IS MISSING 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
15 
GAPS IN THE ANDROID FRAMEWORK 
API to manage APN settings 
Possibility to add trusted NTP servers 
Screen capture API 
Closed enterprise app store 
Enterprise app certificates
WHAT IS MISSING 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
15 
GAPS IN THE ANDROID FRAMEWORK 
API to manage APN settings 
Possibility to add trusted NTP servers 
Screen capture API 
Closed enterprise app store 
Enterprise app certificates
CONCLUSION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
16 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
Android is eligible as a mobile business platform 
Large scale SAP-based Apps are running stable 
Limitations are little 
Users are happy 
PUSH THE ISSUES 
Help pushing the issues for gaps in the Android framework at Googles bugtracker. 
MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
CONCLUSION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
16 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
Android is eligible as a mobile business platform 
Large scale SAP-based Apps are running stable 
Limitations are little 
Users are happy 
PUSH THE ISSUES 
Help pushing the issues for gaps in the Android framework at Googles bugtracker. 
MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
CONCLUSION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
16 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
Android is eligible as a mobile business platform 
Large scale SAP-based Apps are running stable 
Limitations are little 
Users are happy 
PUSH THE ISSUES 
Help pushing the issues for gaps in the Android framework at Googles bugtracker. 
MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
CONCLUSION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
16 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
Android is eligible as a mobile business platform 
Large scale SAP-based Apps are running stable 
Limitations are little 
Users are happy 
PUSH THE ISSUES 
Help pushing the issues for gaps in the Android framework at Googles bugtracker. 
MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
CONCLUSION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
16 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
Android is eligible as a mobile business platform 
Large scale SAP-based Apps are running stable 
Limitations are little 
Users are happy 
PUSH THE ISSUES 
Help pushing the issues for gaps in the Android framework at Googles bugtracker. 
MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
CONCLUSION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
16 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
Android is eligible as a mobile business platform 
Large scale SAP-based Apps are running stable 
Limitations are little 
Users are happy 
PUSH THE ISSUES 
Help pushing the issues for gaps in the Android framework at Googles bugtracker. 
MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
CONCLUSION 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
16 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
Android is eligible as a mobile business platform 
Large scale SAP-based Apps are running stable 
Limitations are little 
Users are happy 
PUSH THE ISSUES 
Help pushing the issues for gaps in the Android framework at Googles bugtracker. 
MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
Q & A 
06.05.2014 
Dennis Hoppe . droidcon . BRUNATA München 
17 
USING ANDROID AS A MOBILE BUSINESS PLATFORM 
Thank You! 
dennis.hoppe@brunata-muenchen.de

More Related Content

Viewers also liked

Mobile apps on the big screen
Mobile apps on the big screenMobile apps on the big screen
Mobile apps on the big screen
Heinrich Seeger
 
Moosecon rcs for developers
Moosecon   rcs for developersMoosecon   rcs for developers
Moosecon rcs for developers
Heinrich Seeger
 
Seleccion y evaluacion de medios
Seleccion y evaluacion de mediosSeleccion y evaluacion de medios
Seleccion y evaluacion de medios
Bety EH
 
Hasan hosgel moosecon_2013_customers_choice fullsize
Hasan hosgel moosecon_2013_customers_choice fullsizeHasan hosgel moosecon_2013_customers_choice fullsize
Hasan hosgel moosecon_2013_customers_choice fullsize
Heinrich Seeger
 
Spe 501 unit project assessments (1)
Spe 501 unit project assessments (1)Spe 501 unit project assessments (1)
Spe 501 unit project assessments (1)
kmshana89
 
Fichatrabalho resumo
Fichatrabalho resumoFichatrabalho resumo
Fichatrabalho resumo
Emilia Nave Maria
 

Viewers also liked (7)

Spring
SpringSpring
Spring
 
Mobile apps on the big screen
Mobile apps on the big screenMobile apps on the big screen
Mobile apps on the big screen
 
Moosecon rcs for developers
Moosecon   rcs for developersMoosecon   rcs for developers
Moosecon rcs for developers
 
Seleccion y evaluacion de medios
Seleccion y evaluacion de mediosSeleccion y evaluacion de medios
Seleccion y evaluacion de medios
 
Hasan hosgel moosecon_2013_customers_choice fullsize
Hasan hosgel moosecon_2013_customers_choice fullsizeHasan hosgel moosecon_2013_customers_choice fullsize
Hasan hosgel moosecon_2013_customers_choice fullsize
 
Spe 501 unit project assessments (1)
Spe 501 unit project assessments (1)Spe 501 unit project assessments (1)
Spe 501 unit project assessments (1)
 
Fichatrabalho resumo
Fichatrabalho resumoFichatrabalho resumo
Fichatrabalho resumo
 

Similar to Dennis hoppe droidcon_2014_slide_deck_screen

The Android STB: A Logical Step in the Evolution of TV
The Android STB: A Logical Step in the Evolution of TVThe Android STB: A Logical Step in the Evolution of TV
The Android STB: A Logical Step in the Evolution of TV
Beenius
 
Stop Doing the Wrong Mobile Math
Stop Doing the Wrong Mobile MathStop Doing the Wrong Mobile Math
Stop Doing the Wrong Mobile Math
Sourcebits
 
It’s a Mobile First World: Faster Mobile Apps with Pivotal and VMware
It’s a Mobile First World: Faster Mobile Apps with Pivotal and VMwareIt’s a Mobile First World: Faster Mobile Apps with Pivotal and VMware
It’s a Mobile First World: Faster Mobile Apps with Pivotal and VMware
VMware Tanzu
 
Swift Development
Swift DevelopmentSwift Development
Swift Development
ManekTech
 
Mobile Apps, Embedded Apps...and IoT - session from Data Driven Summit 2014
Mobile Apps, Embedded Apps...and IoT - session from Data Driven Summit 2014Mobile Apps, Embedded Apps...and IoT - session from Data Driven Summit 2014
Mobile Apps, Embedded Apps...and IoT - session from Data Driven Summit 2014
Allen Bonde
 
Android_for_Work
Android_for_WorkAndroid_for_Work
Android_for_Work
Saba Sabrin
 
SAP and Microsoft Windows 8 and Windows Phone 8 Partner Webinar
SAP and Microsoft Windows 8 and Windows Phone 8 Partner WebinarSAP and Microsoft Windows 8 and Windows Phone 8 Partner Webinar
SAP and Microsoft Windows 8 and Windows Phone 8 Partner Webinar
SAP PartnerEdge program for Application Development
 
Google I/O conference: Announcement of Android N release
Google I/O conference: Announcement of Android N releaseGoogle I/O conference: Announcement of Android N release
Google I/O conference: Announcement of Android N release
iMOBDEV Technologies Pvt. Ltd.
 
5 Factors Which Makes A Native App Best Fit For Business, Engineer Master Sol...
5 Factors Which Makes A Native App Best Fit For Business, Engineer Master Sol...5 Factors Which Makes A Native App Best Fit For Business, Engineer Master Sol...
5 Factors Which Makes A Native App Best Fit For Business, Engineer Master Sol...
engineermaste solution
 
beginning-android-4-application-development-lee--annas-archive--libgenrs-nf-2...
beginning-android-4-application-development-lee--annas-archive--libgenrs-nf-2...beginning-android-4-application-development-lee--annas-archive--libgenrs-nf-2...
beginning-android-4-application-development-lee--annas-archive--libgenrs-nf-2...
NoorFatima504746
 
The Dynamic Workplace – driving disruptive innovation
The Dynamic Workplace – driving disruptive innovationThe Dynamic Workplace – driving disruptive innovation
The Dynamic Workplace – driving disruptive innovation
Matthew Le Cordeur
 
Mobile development capability doc
Mobile development capability docMobile development capability doc
Mobile development capability doc
Sigma Infosolutions, LLC
 
Mobile Development Capability
Mobile Development Capability Mobile Development Capability
Mobile Development Capability
Sigma Infosolutions, LLC
 
MOBILE APPLICATIONS DEVELOPMENT AND SERVICES.pptx
MOBILE APPLICATIONS DEVELOPMENT AND SERVICES.pptxMOBILE APPLICATIONS DEVELOPMENT AND SERVICES.pptx
MOBILE APPLICATIONS DEVELOPMENT AND SERVICES.pptx
muthulakshmi cse
 
Windows Phone 7 Microsoft's Entrant to the Smartphone Wars
Windows Phone 7 Microsoft's Entrant to the Smartphone WarsWindows Phone 7 Microsoft's Entrant to the Smartphone Wars
Windows Phone 7 Microsoft's Entrant to the Smartphone Wars
PointAbout - Mobile Application Strategy & Development
 
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile A...
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile A...SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile A...
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile A...
SAP PartnerEdge program for Application Development
 
Marketing in the Age of Mobile
Marketing in the Age of MobileMarketing in the Age of Mobile
Marketing in the Age of Mobile
Adobe Experience Cloud
 
iOS Application Development for Drones
iOS Application Development for DronesiOS Application Development for Drones
iOS Application Development for Drones
Mistral Solutions
 
Android
AndroidAndroid
Android
Vijay Sankar
 
[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh
IJET - International Journal of Engineering and Techniques
 

Similar to Dennis hoppe droidcon_2014_slide_deck_screen (20)

The Android STB: A Logical Step in the Evolution of TV
The Android STB: A Logical Step in the Evolution of TVThe Android STB: A Logical Step in the Evolution of TV
The Android STB: A Logical Step in the Evolution of TV
 
Stop Doing the Wrong Mobile Math
Stop Doing the Wrong Mobile MathStop Doing the Wrong Mobile Math
Stop Doing the Wrong Mobile Math
 
It’s a Mobile First World: Faster Mobile Apps with Pivotal and VMware
It’s a Mobile First World: Faster Mobile Apps with Pivotal and VMwareIt’s a Mobile First World: Faster Mobile Apps with Pivotal and VMware
It’s a Mobile First World: Faster Mobile Apps with Pivotal and VMware
 
Swift Development
Swift DevelopmentSwift Development
Swift Development
 
Mobile Apps, Embedded Apps...and IoT - session from Data Driven Summit 2014
Mobile Apps, Embedded Apps...and IoT - session from Data Driven Summit 2014Mobile Apps, Embedded Apps...and IoT - session from Data Driven Summit 2014
Mobile Apps, Embedded Apps...and IoT - session from Data Driven Summit 2014
 
Android_for_Work
Android_for_WorkAndroid_for_Work
Android_for_Work
 
SAP and Microsoft Windows 8 and Windows Phone 8 Partner Webinar
SAP and Microsoft Windows 8 and Windows Phone 8 Partner WebinarSAP and Microsoft Windows 8 and Windows Phone 8 Partner Webinar
SAP and Microsoft Windows 8 and Windows Phone 8 Partner Webinar
 
Google I/O conference: Announcement of Android N release
Google I/O conference: Announcement of Android N releaseGoogle I/O conference: Announcement of Android N release
Google I/O conference: Announcement of Android N release
 
5 Factors Which Makes A Native App Best Fit For Business, Engineer Master Sol...
5 Factors Which Makes A Native App Best Fit For Business, Engineer Master Sol...5 Factors Which Makes A Native App Best Fit For Business, Engineer Master Sol...
5 Factors Which Makes A Native App Best Fit For Business, Engineer Master Sol...
 
beginning-android-4-application-development-lee--annas-archive--libgenrs-nf-2...
beginning-android-4-application-development-lee--annas-archive--libgenrs-nf-2...beginning-android-4-application-development-lee--annas-archive--libgenrs-nf-2...
beginning-android-4-application-development-lee--annas-archive--libgenrs-nf-2...
 
The Dynamic Workplace – driving disruptive innovation
The Dynamic Workplace – driving disruptive innovationThe Dynamic Workplace – driving disruptive innovation
The Dynamic Workplace – driving disruptive innovation
 
Mobile development capability doc
Mobile development capability docMobile development capability doc
Mobile development capability doc
 
Mobile Development Capability
Mobile Development Capability Mobile Development Capability
Mobile Development Capability
 
MOBILE APPLICATIONS DEVELOPMENT AND SERVICES.pptx
MOBILE APPLICATIONS DEVELOPMENT AND SERVICES.pptxMOBILE APPLICATIONS DEVELOPMENT AND SERVICES.pptx
MOBILE APPLICATIONS DEVELOPMENT AND SERVICES.pptx
 
Windows Phone 7 Microsoft's Entrant to the Smartphone Wars
Windows Phone 7 Microsoft's Entrant to the Smartphone WarsWindows Phone 7 Microsoft's Entrant to the Smartphone Wars
Windows Phone 7 Microsoft's Entrant to the Smartphone Wars
 
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile A...
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile A...SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile A...
SAP Mobile Platform: Virtual Bootcamp – How to build your Enterprise Mobile A...
 
Marketing in the Age of Mobile
Marketing in the Age of MobileMarketing in the Age of Mobile
Marketing in the Age of Mobile
 
iOS Application Development for Drones
iOS Application Development for DronesiOS Application Development for Drones
iOS Application Development for Drones
 
Android
AndroidAndroid
Android
 
[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh[IJCT-V3I2P36] Authors: Amarbir Singh
[IJCT-V3I2P36] Authors: Amarbir Singh
 

More from Heinrich Seeger

Push notification generaltalk
Push notification generaltalkPush notification generaltalk
Push notification generaltalk
Heinrich Seeger
 
Backendasaservice apiomat
Backendasaservice apiomatBackendasaservice apiomat
Backendasaservice apiomat
Heinrich Seeger
 
Paypal
PaypalPaypal
Push notification technicaltalk
Push notification technicaltalkPush notification technicaltalk
Push notification technicaltalk
Heinrich Seeger
 
Crowdshare, Secure Resource Sharing in Mobile Crowds
Crowdshare, Secure Resource Sharing in Mobile CrowdsCrowdshare, Secure Resource Sharing in Mobile Crowds
Crowdshare, Secure Resource Sharing in Mobile Crowds
Heinrich Seeger
 
Moosecon native apps_blackberry_10-optimized
Moosecon native apps_blackberry_10-optimizedMoosecon native apps_blackberry_10-optimized
Moosecon native apps_blackberry_10-optimized
Heinrich Seeger
 
Mooscon 2013 cebit - google integration in android apps (1)
Mooscon 2013   cebit - google integration in android apps (1)Mooscon 2013   cebit - google integration in android apps (1)
Mooscon 2013 cebit - google integration in android apps (1)
Heinrich Seeger
 
Key2 share moosecon
Key2 share mooseconKey2 share moosecon
Key2 share moosecon
Heinrich Seeger
 
Dev mobile apps ent it final
Dev mobile apps ent   it finalDev mobile apps ent   it final
Dev mobile apps ent it final
Heinrich Seeger
 

More from Heinrich Seeger (9)

Push notification generaltalk
Push notification generaltalkPush notification generaltalk
Push notification generaltalk
 
Backendasaservice apiomat
Backendasaservice apiomatBackendasaservice apiomat
Backendasaservice apiomat
 
Paypal
PaypalPaypal
Paypal
 
Push notification technicaltalk
Push notification technicaltalkPush notification technicaltalk
Push notification technicaltalk
 
Crowdshare, Secure Resource Sharing in Mobile Crowds
Crowdshare, Secure Resource Sharing in Mobile CrowdsCrowdshare, Secure Resource Sharing in Mobile Crowds
Crowdshare, Secure Resource Sharing in Mobile Crowds
 
Moosecon native apps_blackberry_10-optimized
Moosecon native apps_blackberry_10-optimizedMoosecon native apps_blackberry_10-optimized
Moosecon native apps_blackberry_10-optimized
 
Mooscon 2013 cebit - google integration in android apps (1)
Mooscon 2013   cebit - google integration in android apps (1)Mooscon 2013   cebit - google integration in android apps (1)
Mooscon 2013 cebit - google integration in android apps (1)
 
Key2 share moosecon
Key2 share mooseconKey2 share moosecon
Key2 share moosecon
 
Dev mobile apps ent it final
Dev mobile apps ent   it finalDev mobile apps ent   it final
Dev mobile apps ent it final
 

Recently uploaded

Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 

Recently uploaded (20)

Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 

Dennis hoppe droidcon_2014_slide_deck_screen

  • 1. Using Android as a mobile business platform Developer experiences & best practice Dennis Hoppe Android Developer / Senior Software Architect Brunata Wärmemesser GmbH & Co KG droidcon 2014, May 8th
  • 2. BACKGROUND 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 2 USING ANDROID AS A MOBILE BUSINESS PLATFORM In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter measuring application on an Android platform. Why Android? Flexibility & Customizability Hardware availability Open Source (B)YOD Smart phone users are familiar with the handling Growing acceptance in the market It works! In July 2012 the new counter measuring application was put into production.
  • 3. BACKGROUND 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 2 USING ANDROID AS A MOBILE BUSINESS PLATFORM In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter measuring application on an Android platform. Why Android? Flexibility & Customizability Hardware availability Open Source (B)YOD Smart phone users are familiar with the handling Growing acceptance in the market It works! In July 2012 the new counter measuring application was put into production.
  • 4. BACKGROUND 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 2 USING ANDROID AS A MOBILE BUSINESS PLATFORM In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter measuring application on an Android platform. Why Android? Flexibility & Customizability Hardware availability Open Source (B)YOD Smart phone users are familiar with the handling Growing acceptance in the market It works! In July 2012 the new counter measuring application was put into production.
  • 5. BACKGROUND 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 2 USING ANDROID AS A MOBILE BUSINESS PLATFORM In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter measuring application on an Android platform. Why Android? Flexibility & Customizability Hardware availability Open Source (B)YOD Smart phone users are familiar with the handling Growing acceptance in the market It works! In July 2012 the new counter measuring application was put into production.
  • 6. BACKGROUND 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 2 USING ANDROID AS A MOBILE BUSINESS PLATFORM In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter measuring application on an Android platform. Why Android? Flexibility & Customizability Hardware availability Open Source (B)YOD Smart phone users are familiar with the handling Growing acceptance in the market It works! In July 2012 the new counter measuring application was put into production.
  • 7. BACKGROUND 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 2 USING ANDROID AS A MOBILE BUSINESS PLATFORM In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter measuring application on an Android platform. Why Android? Flexibility & Customizability Hardware availability Open Source (B)YOD Smart phone users are familiar with the handling Growing acceptance in the market It works! In July 2012 the new counter measuring application was put into production.
  • 8. BACKGROUND 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 2 USING ANDROID AS A MOBILE BUSINESS PLATFORM In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter measuring application on an Android platform. Why Android? Flexibility & Customizability Hardware availability Open Source (B)YOD Smart phone users are familiar with the handling Growing acceptance in the market It works! In July 2012 the new counter measuring application was put into production.
  • 9. BACKGROUND 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 2 USING ANDROID AS A MOBILE BUSINESS PLATFORM In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter measuring application on an Android platform. Why Android? Flexibility & Customizability Hardware availability Open Source (B)YOD Smart phone users are familiar with the handling Growing acceptance in the market It works! In July 2012 the new counter measuring application was put into production.
  • 10. BACKGROUND 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 2 USING ANDROID AS A MOBILE BUSINESS PLATFORM In 2011 Brunata Wärmemesser GmbH & Co KG decided to build the new counter measuring application on an Android platform. Why Android? Flexibility & Customizability Hardware availability Open Source (B)YOD Smart phone users are familiar with the handling Growing acceptance in the market It works! In July 2012 the new counter measuring application was put into production.
  • 11. BRUNATA MOBILE COUNTER METERING 05.05.2014 Dennis Hoppe . droidcon . BRUNATA München 3 A SUCCESS STORY Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 1,000 mobile devices in operation in the field Berkeley-DB-driven persistence layer No data loss even after two years of productive use Synchronizing 200,000 to 500,000 records per day
  • 12. BRUNATA MOBILE COUNTER METERING Dennis Hoppe . droidcon . BRUNATA München 3 A SUCCESS STORY Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 1,000 mobile devices in operation in the field Berkeley-DB-driven persistence layer No data loss even after two years of productive use Synchronizing 200,000 to 500,000 records per day 05.05.2014
  • 13. BRUNATA MOBILE COUNTER METERING Dennis Hoppe . droidcon . BRUNATA München 3 A SUCCESS STORY Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 1,000 mobile devices in operation in the field Berkeley-DB-driven persistence layer No data loss even after two years of productive use Synchronizing 200,000 to 500,000 records per day 05.05.2014
  • 14. BRUNATA MOBILE COUNTER METERING Dennis Hoppe . droidcon . BRUNATA München 3 A SUCCESS STORY Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 1,000 mobile devices in operation in the field Berkeley-DB-driven persistence layer No data loss even after two years of productive use Synchronizing 200,000 to 500,000 records per day 05.05.2014
  • 15. BRUNATA MOBILE COUNTER METERING Dennis Hoppe . droidcon . BRUNATA München 3 A SUCCESS STORY Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 1,000 mobile devices in operation in the field Berkeley-DB-driven persistence layer No data loss even after two years of productive use Synchronizing 200,000 to 500,000 records per day 05.05.2014
  • 16. BRUNATA MOBILE COUNTER METERING Dennis Hoppe . droidcon . BRUNATA München 3 A SUCCESS STORY Large scale offline application with an SAP backend and SAP NetWeaver 7.3 Mobile as Middleware 1,000 mobile devices in operation in the field Berkeley-DB-driven persistence layer No data loss even after two years of productive use Synchronizing 200,000 to 500,000 records per day 05.05.2014
  • 17. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 4 BRUNATA MOBILE COUNTER METERING A SUCCESS STORY NetWeaver 7.3 Mobile with no need of Sybase or Syclo
  • 18. INTRODUCTION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 5 USING ANDROID AS A MOBILE BUSINESS PLATFORM What should be considered using Android as a business platform? Hardware selection Data Storage & Databases App Deployment Performance & User Experience Monitoring & Troubleshooting Gaps in the Android Framework
  • 19. INTRODUCTION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 5 USING ANDROID AS A MOBILE BUSINESS PLATFORM What should be considered using Android as a business platform? Hardware selection Data Storage & Databases App Deployment Performance & User Experience Monitoring & Troubleshooting Gaps in the Android Framework
  • 20. INTRODUCTION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 5 USING ANDROID AS A MOBILE BUSINESS PLATFORM What should be considered using Android as a business platform? Hardware selection Data Storage & Databases App Deployment Performance & User Experience Monitoring & Troubleshooting Gaps in the Android Framework
  • 21. INTRODUCTION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 5 USING ANDROID AS A MOBILE BUSINESS PLATFORM What should be considered using Android as a business platform? Hardware selection Data Storage & Databases App Deployment Performance & User Experience Monitoring & Troubleshooting Gaps in the Android Framework
  • 22. INTRODUCTION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 5 USING ANDROID AS A MOBILE BUSINESS PLATFORM What should be considered using Android as a business platform? Hardware selection Data Storage & Databases App Deployment Performance & User Experience Monitoring & Troubleshooting Gaps in the Android Framework
  • 23. INTRODUCTION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 5 USING ANDROID AS A MOBILE BUSINESS PLATFORM What should be considered using Android as a business platform? Hardware selection Data Storage & Databases App Deployment Performance & User Experience Monitoring & Troubleshooting Gaps in the Android Framework
  • 24. INTRODUCTION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 5 USING ANDROID AS A MOBILE BUSINESS PLATFORM What should be considered using Android as a business platform? Hardware selection Data Storage & Databases App Deployment Performance & User Experience Monitoring & Troubleshooting Gaps in the Android Framework
  • 25. DEVICE SELECTION CRITERIA 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 6 HARDWARE SELECTION Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing Bigger is not always better Does the user really need a 12 inch device to work with?
  • 26. DEVICE SELECTION CRITERIA 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 6 HARDWARE SELECTION Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing Bigger is not always better Does the user really need a 12 inch device to work with?
  • 27. DEVICE SELECTION CRITERIA 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 6 HARDWARE SELECTION Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing Bigger is not always better Does the user really need a 12 inch device to work with?
  • 28. DEVICE SELECTION CRITERIA 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 6 HARDWARE SELECTION Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing Bigger is not always better Does the user really need a 12 inch device to work with?
  • 29. DEVICE SELECTION CRITERIA 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 6 HARDWARE SELECTION Business only + Consistence of the Android versions + Security (e.g. Kiosk mode) + External MDM software not compulsive -- Higher asset cost -- Device availability BYOD + Lower asset cost + Flexibility -- Multiple screen resolutions -- multiple Android versions -- Security (MDM highly recommended) Consumer or ruggedized  Environment (dust, heat, etc. …)  Special features (barcode scanner)  Pricing Bigger is not always better Does the user really need a 12 inch device to work with?
  • 30. DATA STORAGE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 7 DATA STORAGE & DATABASES Online Scenario  Shared preferences  Property files Offline scenario  DBMS required  Data security Internal storage The data on the internal storage will be deleted if the app is uninstalled External storage The external storage is world readable what may cause security problems
  • 31. DATA STORAGE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 7 DATA STORAGE & DATABASES Online Scenario  Shared preferences  Property files Offline scenario  DBMS required  Data security Internal storage The data on the internal storage will be deleted if the app is uninstalled External storage The external storage is world readable what may cause security problems
  • 32. DATA STORAGE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 7 DATA STORAGE & DATABASES Online Scenario  Shared preferences  Property files Offline scenario  DBMS required  Data security Internal storage The data on the internal storage will be deleted if the app is uninstalled External storage The external storage is world readable what may cause security problems
  • 33. DATA STORAGE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 7 DATA STORAGE & DATABASES Online Scenario  Shared preferences  Property files Offline scenario  DBMS required  Data security Internal storage The data on the internal storage will be deleted if the app is uninstalled External storage The external storage is world readable what may cause security problems
  • 34. DATA STORAGE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 7 DATA STORAGE & DATABASES Online Scenario  Shared preferences  Property files Offline scenario  DBMS required  Data security Internal storage The data on the internal storage will be deleted if the app is uninstalled External storage The external storage is world readable what may cause security problems
  • 35. DATABASES 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 8 DATA STORAGE & DATABASES Ready to use databases for Android Built in SQLite + Ready to use + Part of the system -- No built-in encryption SQLite (JDBC) + Customizability -- Future availability not ensured Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
  • 36. DATABASES 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 8 DATA STORAGE & DATABASES Ready to use databases for Android Built in SQLite + Ready to use + Part of the system -- No built-in encryption SQLite (JDBC) + Customizability -- Future availability not ensured Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
  • 37. DATABASES 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 8 DATA STORAGE & DATABASES Ready to use databases for Android Built in SQLite + Ready to use + Part of the system -- No built-in encryption SQLite (JDBC) + Customizability -- Future availability not ensured Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
  • 38. DATABASES 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 8 DATA STORAGE & DATABASES Ready to use databases for Android Built in SQLite + Ready to use + Part of the system -- No built-in encryption SQLite (JDBC) + Customizability -- Future availability not ensured Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
  • 39. DATABASES 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 8 DATA STORAGE & DATABASES Ready to use databases for Android Built in SQLite + Ready to use + Part of the system -- No built-in encryption SQLite (JDBC) + Customizability -- Future availability not ensured Berkeley DB (JDBC) + System db independent + Performance & stability + Built in encryption -- Licensing for market applications Berkeley DB (Java Edition) + No JNI bottleneck (native JAVA) + Performance (NoSQL)
  • 40. SQLITE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 9 DATA STORAGE & DATABASES Attention when using the Android SQLiteDatabase API The default behavior of Android to deal with corrupted databases is to delete them.
  • 41. SQLITE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 9 DATA STORAGE & DATABASES Attention when using the Android SQLiteDatabase API The default behavior of Android to deal with corrupted databases is to delete them.
  • 42. SQLITE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 9 DATA STORAGE & DATABASES Attention when using the Android SQLiteDatabase API The default behavior of Android to deal with corrupted databases is to delete them.
  • 43. SQLITE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 10 DATA STORAGE & DATABASES
  • 44. SQLITE 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 11 DATA STORAGE & DATABASES
  • 45. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 12 APP DEPLOYMENT Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent WHAT IS MISSING A certificate-based Enterprise app store architecture
  • 46. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 12 APP DEPLOYMENT Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent WHAT IS MISSING A certificate-based Enterprise app store architecture
  • 47. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 12 APP DEPLOYMENT Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent WHAT IS MISSING A certificate-based Enterprise app store architecture
  • 48. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 12 APP DEPLOYMENT Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent WHAT IS MISSING A certificate-based Enterprise app store architecture
  • 49. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 12 APP DEPLOYMENT Google Apps for Business + Trusted app source -- Inflexible compared to MDM solutions -- Pricing Android PackageManager API + Customizability + Easy to implement -- Activation of unknown sources MDM Solution + Comes with additional features -- Licensing & pricing -- Particular device dependent WHAT IS MISSING A certificate-based Enterprise app store architecture
  • 50. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 13 PERFORMANCE & USER EXPERIENCE Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs ANDROID IS A SYSTEM FOR MOBILE DEVICES Don‘t try to port existing desktop applications 1:1 to Android!
  • 51. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 13 PERFORMANCE & USER EXPERIENCE Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs ANDROID IS A SYSTEM FOR MOBILE DEVICES Don‘t try to port existing desktop applications 1:1 to Android!
  • 52. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 13 PERFORMANCE & USER EXPERIENCE Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs ANDROID IS A SYSTEM FOR MOBILE DEVICES Don‘t try to port existing desktop applications 1:1 to Android!
  • 53. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 13 PERFORMANCE & USER EXPERIENCE Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs ANDROID IS A SYSTEM FOR MOBILE DEVICES Don‘t try to port existing desktop applications 1:1 to Android!
  • 54. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 13 PERFORMANCE & USER EXPERIENCE Your memory is limited  Android has a very strict memory usage policy  Dalvik recycles processes automatically  Use services for long running background operations Users expect a certain behavior from a smartphone app  Don‘t overload the user with to much information  Adapt your workflows to a mobile scenario  Follow the common design guidelines Provide a smooth UI flow  Use caching to minimize loading gaps  Run expensive tasks asynchronously  Avoid flow interruptions like popup dialogs ANDROID IS A SYSTEM FOR MOBILE DEVICES Don‘t try to port existing desktop applications 1:1 to Android!
  • 55. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 14 MONITORING & TROUBLESHOOTING Implement your own UncaughtExceptionHandler Make use of the system-provided screenshot capabilities Capture the LogCat output when saving logs WHAT IS MISSING There is currently no way to capture the screen programmatically (with or without user interaction)
  • 56. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 14 MONITORING & TROUBLESHOOTING Implement your own UncaughtExceptionHandler Make use of the system-provided screenshot capabilities Capture the LogCat output when saving logs WHAT IS MISSING There is currently no way to capture the screen programmatically (with or without user interaction)
  • 57. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 14 MONITORING & TROUBLESHOOTING Implement your own UncaughtExceptionHandler Make use of the system-provided screenshot capabilities Capture the LogCat output when saving logs WHAT IS MISSING There is currently no way to capture the screen programmatically (with or without user interaction)
  • 58. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 14 MONITORING & TROUBLESHOOTING Implement your own UncaughtExceptionHandler Make use of the system-provided screenshot capabilities Capture the LogCat output when saving logs WHAT IS MISSING There is currently no way to capture the screen programmatically (with or without user interaction)
  • 59. 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 14 MONITORING & TROUBLESHOOTING Implement your own UncaughtExceptionHandler Make use of the system-provided screenshot capabilities Capture the LogCat output when saving logs WHAT IS MISSING There is currently no way to capture the screen programmatically (with or without user interaction)
  • 60. WHAT IS MISSING 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 15 GAPS IN THE ANDROID FRAMEWORK API to manage APN settings Possibility to add trusted NTP servers Screen capture API Closed enterprise app store Enterprise app certificates
  • 61. WHAT IS MISSING 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 15 GAPS IN THE ANDROID FRAMEWORK API to manage APN settings Possibility to add trusted NTP servers Screen capture API Closed enterprise app store Enterprise app certificates
  • 62. WHAT IS MISSING 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 15 GAPS IN THE ANDROID FRAMEWORK API to manage APN settings Possibility to add trusted NTP servers Screen capture API Closed enterprise app store Enterprise app certificates
  • 63. WHAT IS MISSING 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 15 GAPS IN THE ANDROID FRAMEWORK API to manage APN settings Possibility to add trusted NTP servers Screen capture API Closed enterprise app store Enterprise app certificates
  • 64. WHAT IS MISSING 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 15 GAPS IN THE ANDROID FRAMEWORK API to manage APN settings Possibility to add trusted NTP servers Screen capture API Closed enterprise app store Enterprise app certificates
  • 65. WHAT IS MISSING 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 15 GAPS IN THE ANDROID FRAMEWORK API to manage APN settings Possibility to add trusted NTP servers Screen capture API Closed enterprise app store Enterprise app certificates
  • 66. CONCLUSION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 16 USING ANDROID AS A MOBILE BUSINESS PLATFORM Android is eligible as a mobile business platform Large scale SAP-based Apps are running stable Limitations are little Users are happy PUSH THE ISSUES Help pushing the issues for gaps in the Android framework at Googles bugtracker. MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
  • 67. CONCLUSION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 16 USING ANDROID AS A MOBILE BUSINESS PLATFORM Android is eligible as a mobile business platform Large scale SAP-based Apps are running stable Limitations are little Users are happy PUSH THE ISSUES Help pushing the issues for gaps in the Android framework at Googles bugtracker. MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
  • 68. CONCLUSION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 16 USING ANDROID AS A MOBILE BUSINESS PLATFORM Android is eligible as a mobile business platform Large scale SAP-based Apps are running stable Limitations are little Users are happy PUSH THE ISSUES Help pushing the issues for gaps in the Android framework at Googles bugtracker. MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
  • 69. CONCLUSION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 16 USING ANDROID AS A MOBILE BUSINESS PLATFORM Android is eligible as a mobile business platform Large scale SAP-based Apps are running stable Limitations are little Users are happy PUSH THE ISSUES Help pushing the issues for gaps in the Android framework at Googles bugtracker. MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
  • 70. CONCLUSION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 16 USING ANDROID AS A MOBILE BUSINESS PLATFORM Android is eligible as a mobile business platform Large scale SAP-based Apps are running stable Limitations are little Users are happy PUSH THE ISSUES Help pushing the issues for gaps in the Android framework at Googles bugtracker. MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
  • 71. CONCLUSION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 16 USING ANDROID AS A MOBILE BUSINESS PLATFORM Android is eligible as a mobile business platform Large scale SAP-based Apps are running stable Limitations are little Users are happy PUSH THE ISSUES Help pushing the issues for gaps in the Android framework at Googles bugtracker. MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
  • 72. CONCLUSION 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 16 USING ANDROID AS A MOBILE BUSINESS PLATFORM Android is eligible as a mobile business platform Large scale SAP-based Apps are running stable Limitations are little Users are happy PUSH THE ISSUES Help pushing the issues for gaps in the Android framework at Googles bugtracker. MORE ENTERPRISE CAPABILITIES & PRIVILEGS Users, companies and developers identify with the Android platform on a high level. Please recognize them and provide an advanced enterprise framework!
  • 73. Q & A 06.05.2014 Dennis Hoppe . droidcon . BRUNATA München 17 USING ANDROID AS A MOBILE BUSINESS PLATFORM Thank You! dennis.hoppe@brunata-muenchen.de