Development
Android development portal (link).
Recommended development environment is Eclipse. Download Android SDK, and ADT plugin for Eclipse.
SDK includes USB driver for Android phone.
If running/debugging your Android application does not reuse already launched emulator, restart the ADB server with "adb kill-server".
If emulator takes a lot of screen real estate, add "-scale .72" to additional options for the emulator in Run Configuration -> Target. Resize the window to display the additional fields where you can type this option.
Some initial reading:
- Application Fundamentals (link)
Starting up with Android development
Activity
(link)
Data Binding
Data binding library is currently in beta. See Guide (link).
Database
Data Loading with Content Provider
Content Provider mechanism is closely tied with loaders and observers to provide seamless data loading experience.
Loaders
Design Specifications
- Structure, includes Toolbars, App Bars, etc. (link)
Intents
Description: Intents (link).
Using Intents to start an Activity in another application:
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.example", "com.example.MyExampleActivity"));
startActivity(intent);
ACTION_MAIN
with category CATEGORY_HOME
-- Launch the home screen.
Notifications
Link to developer documentation (link).
Services
Reference (link)
Revenue
There are several streams of revenue with the Android apps.
The simple one is getting paid for application download. This is done through app markets, like Google Play or Amazon.
Next, relatively new one, is in-app purchases. Similar to Facebook apps and games, purchases can be done straight from the app itself.
The last one is advertising. Apps can be distributed for free but they contain advertising that generates revenue for the publisher. The most popular advertisement provider for Android apps is AdMob.
Publishing on Android Market
Once you are done with an application, follow the instructions (here) to publish it on the Android Market.
Links
Excellent tutorials @ Grokking Android (link)