Android Programming Basics
This is an introductory material for mobile apps development for Android platform with the official Android Studio IDE and Android SDK.
Introduction to Android app development using Android Studio:
Android
- Mobile operating system based on Linux kernel
- User Interface for touch screens
- Used on over 80% of all smartphones
- Powers devices such as watches, TVs, and cars
- Over 2 Million Android apps in Google Play store
- Highly customizable for devices / by vendors
- Open source
Android Studio + SDK
- Official Android IDE
- Develop, run, debug, test, and package apps
- Monitors and performance tools
- Virtual devices
- Project views
- Visual layout editor
Android App
- One or more interactive screens
- Written using Java Programming Language and XML
- Uses the Android Software Development Kit (SDK)
- Uses Android libraries and Android Application Framework
- Executed by Android Runtime Virtual machine (ART)
Android Challenges
- Multiple screen sizes and resolutions
- Performance: make your apps responsive and smooth
- Security: keep source code and user data safe
- Compatibility: run well on older platform versions
- Marketing: understand the market and your users (Hint: It doesn’t have to be expensive, but it can be.)
App Building Blocks
- Resources: layouts, images, strings, colors as XML and media files
- Components: activities, services,… and helper classes as Java code
- Manifest: information about app for the runtime
- Build configuration: APK versions in Gradle config files
Component Types
- Activity is a single screen with a user interface
- Service performs long-running tasks in background
- Content provider manages shared set of data
- Broadcast receiver responds to system-wide announcements
Think of Android as a Hotel:
- Your App is the guest
- The Android System is the hotel manager
- Services are available when you request them (.blue[Intents])
- In the foreground (Activities) such as registration
- In the background (Services) such as laundry
- Calls you when a package has arrived (Broadcast Receiver)
- Access the city’s tour companies (Content Provider)
Building Your First App
- Create an Android Project
- Run Your App
- Build a Simple User Interface
- Start Another Activity
References
- Getting Started | Android Developers
- Dashboards | Android Developers
- Android Developer Fundamentals | Google Developers Training | Google Developers
- Introduction - Android Developer Fundamentals Course - Practicals
- Meet Android Studio | Android Studio