Giter VIP home page Giter VIP logo

hasans-course-mastering-android-java's Introduction

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.

  • ConstraintLayout
  • TextView
  • Button
  • Click listener Java method
  • Toast
  • Intent (start another activity)
  • 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)
  • 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
  • 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
  • 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 of ButterKnife library to listen any button/view click event
  • Check these awesome blog posts on Retrofit
  • ListView - show a static string list from <string-array> of string.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 using Retrofit
  • POJO to JSON covert using Gson Library and print in Log
  • Check this Bengali Blog post for RecyclerView and CardView
  • RecyclerView - show a movie list with image (using Picasso Library). Data will come from server using Retrofit
  • RecyclerView - item click event listen (listen every component click event of the RecyclerView item)
  • RecyclerView will be refreshable using SwipeRefreshLayout
  • Check network state (is internet available) using ConnectivityManager and NetworkInfo classes before any network call
  • Show ProgressDialog when first time call to network for movie list
  • Pass Movie Object from MovieListActivity to MovieDetailsActivity using Intent and show the Movie data in MovieDetailsActivity
  • Enable back button on ActionBar of MovieDetailsActivity
  • Enable Click Again to Exit feature in MovieListActivity when device's back button pressed
  • Activity Lifecycle
  • Use of dimen value for widget's height-width or padding-margin instead of hardcoded dp value
  • Use different xml layout for responsive UI
  • AlertDialog to show a pop up dialog

Resources:

  • Capture image using default camera App of device
  • Web scraping using JSOUP library
  • ProgressBar

Resources:

  • 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:

  • 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:

  • 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.

  • 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 a RecyclerView
    • Count the number of row in table
    • Search a student by his registration number
    • Delete a student by his registration number
  • 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
  • In App Notification
  • ProGuard to prevent reverse engineering of APK

Resources:

  • Show Google Map using SupportMapFragment
  • Show user's current location on Map
  • Service - to do any task in background
  • Get user's current location (Latitude and Longitude) from GPS using SmartLocation library
  • Firebase Analytics
  • Firebase Crashlytics
  • EventBus Library
  • Audio Player
  • Service

hasans-course-mastering-android-java's People

Contributors

akterh avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.