Top 10 Takeaways from DroidconIN 2016 Day 2

Bob
Thoughts Overflow
Published in
2 min readNov 11, 2016

--

Image Credit: https://blog.droidcon.in/what-to-expect-at-droidconin-2016-16c693ed8fb4#.mvlfrvurd

If you haven’t read my Top 10 Takeaways from Day 1 event, here it is.

  1. Android Keystore System is a vault to store cryptographic keys. Use the Keystore System to save any sensitive data in the device — like password, client secret. It is impossible to hack the keys from Keystore even from a rooted device.
  2. But, be aware that the Keystore cannot be accessed when the device is locked. So if the access token is saved using the Keystore System, it is not possible to send network requests with access token when the device is locked. And this API is available from Android 4.3 (API level 18)
  3. If your application has any high sensitive data and it must not be exposed at any cost, then dont allow the user to proceed in the application if it is a rooted device
  4. adb command to enable “Show Layout Bounds”: adb shell setprop debug.layout true
  5. Fail Fast. Fail immediately and visibly. Use lint checks, annotations, and preconditions like checkNotNull.
  6. Proteus is a kind of replacement for Android LayoutInflater. The layouts can be controlled from our backend and the Proteus inflates the layouts at runtime. So it is a cakewalk to tweak the layouts without the need to update the application in Google Play.
  7. All users are not the same. Then why do we design a single user interface for all our users? Try to make our application to observe the user actions, and adapt to each user.
  8. Two IoT technologies from Google: Brillo is the OS. It is based on Android, but it is not Android. Weave is the communication layer that enables the link between devices.
  9. React Native enables instant app updates by updating the JavaScript part of our application from our server. Sencha, PhoneGap, and Ionic are WebView based but React Native uses the native components.
  10. But using React Native, it is possible for our application cold startup time to increase. We can have a combination of native and React Native code in our application to mitigate this.

Links to Speakers and Slides:

Android Security Internals (Workshop) — Kartik Lalan

React Native in Production Mario Stallone, Myntra

Android Development at Dropbox — Piotr Gurgul, Dropbox

Mutative Design- User, not Users — Faiz Malkani, Refly

Proteus: Android Layout EngineAditya Sharat, Flipkart

Brillo and Weave- IOT, the Next Thunderstorm — Devavrata Sharma, Techjini

Please leave comments if there is any queries.

--

--