android brown bag lunch - droidconnl overview
DESCRIPTION
Our extra from DroidconNL talks for Android eBuddy colleaguesTRANSCRIPT
DroidconNL 2013 Genymotion
Android Brown Bag Lunch at eBuddy
Agenda• Calabash
• Gradle
• Security
• Teams workflow
• NativeCSS
• Resource classifiers
• Genymotion
Calabash• They are also have/had issues (“Nothing is perfect but it
pays off”)
• Advices:
• Use devices instead of emulators
• Use MacOS (or only unix based machine)
• Ali Derbane:
• Lab: http://derbane.com/#labs
• Slides: http://bit.ly/IpcSed
• Video: http://bit.ly/1fNViPy
Gradle• Same Issues (“It will be perfect build tool with great IDE integration in one
year”)
• Advices:
• Create separate module for unit tests
• Improvements to our current build file:
• packageNameSuffix, versionNameSuffix
• buildConfig
• David Gonzalez:
• Slides: http://bit.ly/1eF2hY3
• Video: http://www.youtube.com/watch?v=ij7TjmVypmo
• Another video: http://bit.ly/1cbuQfi
Security• Reverse engineering
• Obfuscation and DexGuard
• Encryption
• SpongyCastle
• SQLCipher, IOCipher, Ob-secure Preferences, Keystore provider (4.3)
• SSL
• OnionKit - StrongTrustManager, Orbot
• Tamper detection
• Debuggable check, Installer check, Emulator check, Root check
• Video: http://bit.ly/1ikkT4K
Teams Workflow• SoundCloud, Novoda, Github, ItudeMobile
• Agile, “XP”
• CI, pair programming, various testing (monkey testing)
• Open Source
• Square: Mortar, Flow
• Netflix: RxJava
NativeCSS • Short video: http://bit.ly/1cQltQx
• Example:
URL css = new URL(“http://10.0.2.2:8000/styles.css");
NativeCSS.styleWithCSS(“styles.css”, css, EverySecond);
• References:
• Website: http://nativecss.com
• Intro: http://bit.ly/18MxOpV
Resource Classifiers• Most used qualifiers (in order):
• Language (-en)
• Language & Region (-en-rUS)
• Smallest Width (-swXXXdp, e.g. –sw600dp)
• Screensize (-small, -normal, -large)
• Screen Orientation (-port, -land)
• Screen Pixel Densitiy (-mdpi, -hdpi, -xhdpi, -xxhdpi)
• Platform Version (-v11, -v13)
Resource Practices• For min SDK v11
• layout - phones
• layout-v11 - tablets 10”
• layout-v13 - small phones
• layout-sw320dp - other phones
• layout-sw600dp - tablets 7”
• layout-sw720dp - other tablets 10”
• Resource aliases
• Keep type of targeting devices in resource (bool or constant)
• includes and own xml attributes
• Slides: http://slidesha.re/1cChEyp
Genymotion• THE FASTER ANDROID EMULATOR
• Features:
• Command line and integration with AS, IntelliJ IDEA or Eclipse
• WiFi, GPS, Camera, Battery, Drag&Drop, Multitouch*, Accelerometer*
• Video: http://bit.ly/1acmeR4
Thank you!