Android-Development-Course
Android-Development-Course copied to clipboard
I'm taking an onsite course on Android App Development at Dhaka, Bangladesh (see: https://goo.gl/SP6yzk). I'll add all source codes of my training program is this repository
Android Development Course
I'm taking an onsite course on Android App Development at Dhaka, Bangladesh (see here for details course outlines: https://goo.gl/SP6yzk). I'll add all source codes of my training program is this repository. You'll find here step by step source code and topics of Android App Development training.
Class: 1
- ConstraintLayout
- TextView
- Button
- Click listener Java method
- Toast
- Intent (start another activity)
Class: 2
- ConstraintLayout
- TextView
- EditText
- Button
- Click listener Java method
- Click listener XML attribute
- Toast
- Intent (start another activity)
- Pass values from one activity to another activity
- Reusable XML layout (using
include
tag) - Using third party library (See Bengali blog post)
Class: 3
- ImageView with Android Piccasso Library
- SharedPreference
- WebView
- Send an E-mail using Intent
- Discussing about Singleton Design Pattern
- Discussing about Android compile and build system. Keyword: Dalvik
Class: 4
-
ButterKnife
Library to reduce boilerplate code - Phone call
- Run time permission for phone call
- Send a POST request to a PHP server and receive a response (See Bengali Blog post)
- Update UI from another class using
interface
Class: 5
- For signing in, send a POST request to server with user name and password
- If sign in is success, finish the login Activity and start another Activity to show user's IP address
- Send a GET request to this site. That site will send a response body of JSON with user's IP address. Set the IP address to a
TextView
- Use of mention string resources in
string.xml
file instead of hardcoded text - Use of
@OnClick
annotation ofButterKnife
library to listen any button/view click event - Check these awesome blog posts on Retrofit
Class: 6
- ListView - show a static string list from
<string-array>
ofstring.xml
- ListView - item click event listen
- ListView - item long click event listen
- RecyclerView - show a movie list with image (using
Picasso
Library). Data will come from server usingRetrofit
- POJO to JSON covert using Gson Library and print in Log
-
Check this Bengali Blog post for
RecyclerView
andCardView
Class: 7
-
RecyclerView
- show a movie list with image (usingPicasso
Library). Data will come from server usingRetrofit
-
RecyclerView
- item click event listen (listen every component click event of theRecyclerView
item) -
RecyclerView
will be refreshable usingSwipeRefreshLayout
- Check network state (is internet available) using
ConnectivityManager
andNetworkInfo
classes before any network call - Show
ProgressDialog
when first time call to network for movie list - Pass Movie Object from
MovieListActivity
toMovieDetailsActivity
usingIntent
and show theMovie
data inMovieDetailsActivity
- Enable back button on
ActionBar
ofMovieDetailsActivity
- Enable Click Again to Exit feature in
MovieListActivity
when device's back button pressed
Class: 8
-
Activity Lifecycle
- Use of
dimen
value for widget's height-width or padding-margin instead of hardcodeddp
value - Use different
xml layout
for responsive UI -
AlertDialog
to show a pop up dialog
Resources:
- Android Activity Lifecycle - Android official documentation
- Activity Lifecycle - Tutorials Point
- Dimension
- Managing Screen Sizes
- Different values folder for different screens
- Supporting Different Screen Sizes - Android official documentation
Class: 9
- Capture image using default camera App of device
- Web scraping using JSOUP library
-
ProgressBar
Resources:
- Bengali Blog Post on JSOUP Library
- Android working with Camera - AndroidHive
- Android Uploading Camera Image, Video to Server with Progress Bar - AndroidHive
Class: 10
- Implement an Abstraction Layer for Retrofit Network call
- Android debugging
- Refactor/rename (class, variable, method etc.)
- Rename Android unique package name
- Change Launcher Icon of Android App
- Some Android Studio keyboard shortcuts
Resources:
- Bengali Blog Post on Abstraction in network layer using Retrofit
- Debug your App - Android Official Documentation
- Refactor/rename file in Android Studio
- Refactor your code in Android Studio - OneTouchCode
- Rename package in Android Studio
- Change Launcher icon
- Android Studio Keyboard Shortcuts - Android Official Documentation
Class: 11
- SQLite Database
- Create Database
- Create Table
- Write a record (row) into table
- Read all records from table
- Count the number of row in table
- Git
- Branching
- gitignore
Resources:
- Android SQLite Database - TutorialsPoint
- Local Databases with SQLiteOpenHelper - CodePath
- Android SQLite Database Tutorial - AndroidHive
- Git branching and Merging
- gitignore in Android Studio
Class: 12
- SQLite Database implementation with abstraction layer
- Create Database
- Create Table
- Write a record (row) into table
- Read all records from table
- Count the number of row in table
- Search a student by his registration number
No concrete implementation for database query. I implement here an abstraction layer for query. Activity class just call a method of an interface
and implement a callback
for query result.
Class: 13
-
Fragment
- SQLite Database implementation with abstraction layer
- Create Database
- Create Table
- Write a record (row) into table
- Read all records from
student
table and show in aRecyclerView
- Count the number of row in table
- Search a student by his registration number
- Delete a student by his registration number
Class: 14
- SQLite Database implementation with abstraction layer
- Create Database
- Create two tables and make relationship using
Foreign Key
-
ON CASCADE DELETE
implementation - Insert operation
- Read operation
- Update operation
- Delete operation
- Count table row
-
DialogFragment
implementation
Class: 15
- In App
Notification
-
ProGuard
to prevent reverse engineering of APK
Resources:
Class: 16
- Show Google Map using
SupportMapFragment
- Show user's current location on Map
Class: 17
-
Service
- to do any task in background - Get user's current location (Latitude and Longitude) from GPS using
SmartLocation
library
Class: 18
-
Firebase Analytics
-
Firebase Crashlytics
-
EventBus
Library
Class: 19
- Audio Player
- Service