The goal of this project is to provide people new to the platform a "quick-start" project skeleton that shows off current Android development practices (as of summer 2013).
We're trying to use git as a teaching method. Basically we encourage beginners to examine the different steps that bring you from nothing to a complete project. We've tried hard to keep each step of the process explained in commit messages.
Here are a few links to understand the ActionBar.
- Design Pattern
- Dev Guide Entry
- Dev Guide on Menus, as they're linked to ActionBars when using the overflow button.
Hamburger is the name for the "three horizontal line" button icon we see used to summon up a navigation drawer. I picked up on that name from this twitter post and this blog post. Interesting read if you can spare a few minutes.
These two posts are rather critical of the idea, but Google has officialized the concept with the Navigation Drawer Design Pattern. Here is a link to the Navigation Drawer Developer Doc.
SourceTree client for Git (Mac/Windows)
I like it because it's free, it makes some Git concepts easier to understand for newbies (vs the command line), and it promotes the use of Vincent Driessen's branching model.
As an added bonus it makes it easy to hook up to popular Git code repositories, both public (GitHub) or private (Bitbucket)
Genymotion Android Emulator
Pros:
- Blazingly fast, faster than real device.
- (Integration tests at x10 speeds? Yes please.)
- Perfect for product demos on projectors
- Acts like a real device
- Access to Play Store
- Syncs with your google account
Caveats:
- You might have to wait for support of new Android versions.
- Fixed!
Current version has softkeyboard/hardkey bugs (overflow a problem) - When using NDK/JNI you'll need to make sure to provide x86 libraries
Quick, where's my .apk??
- Just run (ctrl-r) with your device as a target, or:
- From your project folder on the command line (Mac/Linux with properly configur):
ant clean release
find . -name \*apk -ls
points to the useable .apk.adb install your.apk
to installadb uninstall com.your.project.packagename your.apk
to uninstall
"Easy" wins when/if time permits
- BugSense
- Leveraging Google's Android APIs (Maps, push notifications, etc.)