Skip Main Navigation
Page Content
This event has ended

Save This Event

Event Saved

Advanced Android: Securing Your Apps and Your Users


Advanced Android: Securing Your Apps and Your Users
Available Dates
No tickets available for upcoming dates

Ticket Information

Ticket Type Sales End Price Fee Quantity
General Admission
This is the most that you will pay. If enough people register, the price will drop, and you will be refunded the difference. See for more details!
3 days before event starts $400.00 $0.00

Share Advanced Android: Securing Your Apps and Your Users

Event Details

CommonsWare Seminar: Securing Your Apps and Your Users

Security has been getting a lot more attention recently, due to high-profile attacks that have garnered lots of news coverage. Mobile security is no different, as app developers have to take into account how to secure their apps — and, by extension, their users and those users' data — from attackers bent on absconding with, or damaging, data.

In this one-day seminar, we will explore what it takes to get your app ready for the first wave of "M" devices, so you can meet your power users' expectations and help put some distance between yourself and any competing apps.

Course Outline

The seminar will cover the following specific topics:

Overview of Android Security (~0.5 hours)

  • What are the various layers of the Android security model that affect developers?
  • How does Android use the Linux process model to help secure our apps?
  • What impacts does this model have on our ability to work with local files?
  • What is going on with removable media on Android, anyway?

Android's Permission System (~1 hour)

  • What is Android's permission system?
  • How do we declare our wish to hold certain permissions?
  • How do we know if we hold those permissions?
  • How do we ask the user to kindly consider granting us those permissions?
  • How do we define custom permissions, and what are the problems with doing so?

App-Level Data Encryption (~1.5 hours)

  • Why might we want to encrypt our local data?
  • What is SQLCipher for Android?
  • How can we use SQLCipher for Android as an encrypted replacement for standard SQLite?
  • How can we encrypt other sorts of files?
  • What about Facebook's Conceal library?
  • Where do we get our encryption passphrase from?
  • What is Android's keystore, and how can we use it to help with encrypting user data?
  • How can we use two-factor authentication, such as fingerprints, to tie into our encryption process?

Defending App APIs and UIs (~2 hours)

  • What are our app's APIs?
  • When are components exported, and when are they not exported?
  • How do I secure my components with permissions?
  • How do I grant temporary access to my ContentProvider, while normally keeping it secured?
  • How can my components — or the components that my app talks to — be spoofed?
  • How can I check signatures of apps to determine if the partner app is what I think it is?
  • What was the tapjacking attack, and what is the activityjack attack?
  • What is the camera peeking attack?
  • How do I defend against screenshots?
  • How do I "defend" against AccessibilityService and NotificationListenerService implementations?
  • Why is the clipboard insecure?

SSL (~1 hour)

  • How can I use SSL on Android?
  • Why might I want to use a self-signed certificate, and how can I use one on Android?
  • What is "pinning" with regards to SSL, and how can I employ it in Android?
  • What is "memorization" with regards to SSL, and how can I employ it in Android?
  • How can I deal with revoked SSL certificates, as we encountered with Heartbleed?

Device Administration and Full-Disk Encryption (~1 hour)

  • What is device administration?
  • How do I make my app be a device administrator?
  • What can I do given that I am a device administrator?
  • What is the "device owner" stuff that got added to Android 5.0?
  • What is the story around full-disk encryption on Android?
  • Can Android's full-disk encryption be defeated?

Note that there may be slight adjustments to the agenda as Android evolves between now and the seminar, but it should remain mostly intact.

What Else Do I Need to Know?

The more attendees we get, the lower the price will be for all attendees. The cost to you could drop to as little as $250 if we get 20 or more people signed up. The details for the pricing can be found on the CommonsWare site.

The event will be held at the NYC Seminar and Convention Center, conveniently located in midtown Manhattan, assuming that midtown Manhattan is a convenient location for you. If not, New York City would love to have you come by anyway!

This seminar is taught by Mark Murphy. On the plus side, he is a world-renowned expert on Android app development. That being said, sometimes he is insecure.

Frequently-asked questions about CommonsWare's public training can be found on the CommonsWare site, or contact CommonsWare with any questions.

Have questions about Advanced Android: Securing Your Apps and Your Users? Contact CommonsWare

When & Where

NYC Seminar and Conference Center
71 West 23rd Street
New York, NY 10010



CommonsWare publishes The Busy Coder's Guide to Android Development, the world's oldest, largest, and most frequently updated book on Android application development. Mark Murphy, the author of the book, has also contributed over 15,000 answers on StackOverflow and other developer support venues. Mr. Murphy delivers on-site training, plus many conference presentations annually, including every AnDevCon, the 2010-2014 droidcon UK conferences, the 2014 droidcon NYC conference, the 2013 and 2014 Samsung Developers Conferences, and the 2014 WIPJam at Mobile World Congress.

  Contact the Organizer

Please log in or sign up

In order to purchase these tickets in installments, you'll need an Eventbrite account. Log in or sign up for a free account to continue.