android libraries
DESCRIPTION
Lecture about useful Android libraries. aDevMeetup #13, 2014TRANSCRIPT
Useful Android Libraries
Tomáš Kypta
Libraries
• saves time and work
• it might be painful without libraries
• back-porting new API to older Android versions
• simplifying API
Libraries
• The ideal library?
• “perform one task and perform it well”
• open-source
Dialogs
• Why do we need a library for dialogs?
Dialogs
Dialogs• Let’s simplify
• android-styled-dialogs
Dialogs
• android-styled-dialogs
• backports dialogs in Holo theme
• makes styling and using dialogs a piece of cake
Dialogs
Pull-to-refresh
• ActionBar-PullToRefresh
Swipe-to-dismiss
Swipe-to-dismiss with Undo
Swipe-to-dismiss• Android-SwipeToDismiss
• SwipeToDismissNOA
• backport to Android 2.x
• SwipeToDismissUndoList
• with undo
REST API• Retrofit
• simple REST client for Android and Java
• synchronous
• asynchronous
• observable (RxJava)
Image loaders
• displaying images from web
Image loaders• Volley
• NetworkImageView
• Picasso
• easy to use
• Android-Universal-Image-Loader
• powerful and flexible library
View Injection• getting rid of boilerplate code
• TextView title = (TextView) findViewById(R.id.title);!
• Butter Knife
• @InjectView(R.id.title) TextView title;!
• can’t be used in libraries
Dependency injection
• Dagger
Event bus
• Otto
• Guava based event bus
IntelliJ IDEA plugins
• android-selector-chapek
• generates drawable selectors from appropriately named Android resources
IntelliJ IDEA plugins
• android-butterknife-zelezny
• allows one-click creation of Butterknife view injections
UI debugging• android-grid-wichterle
• app that shows grid overlay
• helps to verify app design
UI debugging
• Scalpel
• debugging tool to uncover the layers under our app
UI niceties
• Crouton
Unit testing
• Roboelectric
• fest-android
• FEST assertions geared toward testing Android
Developing Libraries
Developing Libraries
• jar
• so
• apklib
• aar
Developing Libraries
• How to publish?
• Maven Central Repository
THE END