1. Introduction
- What is Android?
- Android versions
- Architecture
- Android vs Linux & kernel enhancements
- Binder (IPC)
- Android boot process
- Android startup& runtime
- Layer interactions
|
2. Android Development Environment
- Android SDK
- Eclipse & ADT Plug-in
- Android Studio
- SDK Manager
- Gradle Build System
|
3. Development Tools
- Emulator and Virtual Devices in Android
- Android Debug Bridge (ADB)
- Using ADB for controlling devices
- Dalvik Debug Monitor Service (DDMS)
- Other tools in the Android SDK
|
4. Android Project
- Anatomy of Android Project
- Build Process
- Creating your first simple Android Project
|
5. Android Application
- Introduction to Application Components –
- Activities, Services, Content Providers, Broadcast Receivers
- Application Life-cycle &callbacks
- Application Manifest File
|
6. Activities
- Activities and View
- Creating & Registering Activities
|
7. Debugging
- DDMS Perspective
- Debug Perspective
- Attaching debugger at runtime
- Debugger windows – variable, expressions, stack, breakpoints, etc
- Using Logcat
- Filtering logs
|
8. Resources
- Resources Architecture in Android
- /res folder
- Android Asset Packaging Tool (aapt)
- Resource Types
- Raw Resources
- Assets
- Resource qualifiers
- Supporting different configurations
- Effective resource management.
|
9. Addressing Fragmentation
- Screen Resolution
- Screen Size
- Localization
- Handling platform changes
|
11. User Interface -II
- Special Views
- ListView
- Spinner
- ImageView
- ScrollView
- WebView
|
10. User Interface I
- View Architecture in Android
- View &ViewGroups
- Programmatic vs Declarative
- Layouts
- XML Based Layouts and Views
- Working with View objects defined in XML
- XML Layout Inflator Service
- Linear layout
- Table Layout
- Relative Layout
- Frame Layout
- Common Widgets
- TextView, Buttons, EditText, etc.
- Handling events
|
12. Activities in Depth & Intents
- Handling configuration changes
- Using onSaveInstanceState & onRestoreInstanceState
- Intents a late runtime binding mechanism
- Implicit and Explicit Intents
- SDK Provided Intent Actions
- Intent Filters
- Intent Resolution Mechanism
- Custom Intents
- Pending Intents
- Adapters
- Introduction to Adapters for ListView, Spinner, etc
- Built-in Adapters
- Writing Custom Adapters
|
13. Fragments
- Life Cycle
- Types of fragments
- Event sharing with Activity
- Communication between Fragments
- Creating universal applications for phones and tablets
- Menus
- Options Menu
- Action bar – adding items, using icons instead of text
- Context Menu
|
14. User Interface -III
- Dialogs & Notifications
- Dialogs in Android
- Built-in dialogs (Alert Dialog, Progress Dialog etc.)
- Custom Dialogs &DialogFragments
- Notification Service
- Custom Notifications
- Toast
|
15. Action Bar
- Anatomy of Action Bar
- Tabbed Navigation
- List Navigation
- Action View
|
16. Material UI
- Concepts of Material Design
- Setting the theme
- Lists & Cards
- Shadows &Drawables
- Animation
|
17. Permissions & Security
- Android Security model
- Permissions
- Protection Levels
- Declaring & using permissions
- Defining custom permissions
- Debug Keystore & self signing
|
18. Preferences Framework
- Shared Preferences
- PreferenceActivity
- PreferenceFragment
|
19. Data Stores in Android
- SQLite
- Introduction to SQLite
- SQLite classes in Android SDK
- SQLite Helper classes
- CRUD Operations
- Custom cursor adapter
|
20. Content Providers
- System Content Providers
- Content Provider Data Model
|
21. Threading
- Thread Lifecycle
- Looper
- Considerations while using UI+Threads
- Handlers
- Messages &Runnables
- Using AsyncTask
- Handling configuration changes in multithreading applications
|
22. Services
- Need of a service
- Service Lifecycle
- Permissions
- Started & bound service
- Implementing a local service
- Custom binders
- Remote Services – using messenger/ handler
- Using Remote Services for IPC through AIDL
|
23. Networking
- Bluetooth
- Wifi
- HTTP classes
- Consuming web services through JSON
|
24. Broadcast Receivers
- Receiver lifecycle
- Normal & Ordered broadcasts
- Local broadcast manager
- Registering receivers at runtime
- Using other components from receivers
|
25. Google Map
- Generate Key
- Integration
- Map Example
|
26. Publishing Android Applications
- Versioning
- Digitally Signing application
- Deployment
- Publishing on Google Play
|