Android Development with Kotlin
Android Application Performance Optimization
Lectures -49
Resources -1
Duration -22.5 hours
30-days Money-Back Guarantee
Get your team access to 10000+ top Tutorials Point courses anytime, anywhere.
Course Description
Unlock the full potential of Android app development with our immersive course, 'Android Development with Kotlin.' Tailored for both beginners and intermediate developers, this Course is a comprehensive exploration of the Kotlin programming language within the dynamic landscape of Android development.
Dive into the foundations of Kotlin, mastering variables, control flow, and functions. Navigate Android Studio with ease, building a strong understanding of UI design principles, layouts, and themes. Delve into advanced topics such as object-oriented programming, database handling, networking, and API integration.
Course Structure
Installation and Setup
Install IntelliJ IDEA - Windows PC
Install Android Studio - Windows PC
Install IntelliJ IDEA - MAC
Install Android IntelliJ - Linux Ubuntu
Installing Android Studio - Linux Ubuntu
How to Import Kotlin Code/Resources into IntelliJ
Kotlin Source Code - GitHub
IntelliJ Updates
Update to Kotlin 1.2
Kotlin Basics
Kotlin - How to Make Comments in Your Code
Kotlin Variable type Int
Kotlin - Variable type - Double
Kotlin Variable type Boolean
Kotlin - Variable type - Float
Kotlin Char Variable Types
Kotlin - Difference between Var and Val Keywords
Kotlin - How to Read Input with readLine Method - App - Store Conversation
Kotlin - Subtraction
Kotlin - Multiplying Numbers
Kotlin - Division
Kotlin - Remainder
Incrementing and Decrementing
How to Convert Between Data Types
Conditional Statements and Loops
Conditional operators (<,>, ==, !=, <=, >=)
If-else Statements and Conditional operators
Logical Operators (AND, OR, NOT)
When Expression
For Loop
While Loop
Do while Loop
App - How Many Siblings?
Functions With Parameters
Functions Return Types
Functions - No return Type, No parameters
Variable Scope
Object-Oriented Programming in Kotlin
Introduction to Object-Oriented Programming - OOP - What's a Class?
Let's Create our First Class
Setters and Getters
Inheritance - Introduction
Inheritance
Overloading Constructors
Controlling Access to fields (Instance Variables - Properties)
Kotlin - Class Extension
Nested Classes
Inner Classes
Overloading Operators + Challenge
Interface Classes
Abstract Classes
Generic Classes
Enums in Kotlin
Arrays and File Handling
What's an Array - Creating Arrays in Kotlin
Create Arrays and Iterate Through
Arrays - Part 2
Array Lists
Hashmaps
MapOf, Arrayof, MutableList
Writing to Files (Text Files)
Writing to File with User Input and Appending Characters
Reading from Text Files
App - Writing a Reader-Write App
Android Studio Basics
Installing the Android Studio and Setup Kotlin and Run First App
Android Studio Quick Tour
Android Studio Tour - File Structure, Manifest, Strings
App - What's My Name
TextViews, EditText, and Buttons - Enter Name and Show name
Enter Name and Show - Final
String.xml, Manifest and Android Studio File
User Interface Design
Android Toast and Context Class
App - How Much Do You Weigh on Different Planets?
Adding Images to Our Apps - Why we Use Kotlin Extensions Plugin, ImageViews, ImageFilter
Adding Images to Our Apps - App - App - Random Background Colors
Layouts - LinearLayout
Styles and Themes in Android
Activity and Fragment Lifecycle
Context in Android and Toast Class
What's an Activity?
Activity lifecycle
Navigating from One Activity to Another
Passing Data between Activities
Passing data back to the first Activity
App - Animals Bio
Introduction to Listviews - Demo
How do Listviews Work? - Adapters and Listviews
RecyclerView and it’s working
Adding Event Listeners to Each Row
Data Persistence in Android
Introduction to Databases in Android - Kotlin - SQLite
App - Chores - Demo
App - Chores - User Interface
App - Chores - Database handler Class
App - Chores - Add and Retrieve a Chore
App - Chores - Finalize CRUD Functions
App - Chores - Saving User Input to Database
App - Chores - Custom Listrow - User Interface
App - Chores - Recycler Adapter
App - Chores - Showing Chores on Recycler Adapter
App - Chores - Adding Toolbar Add Button
App - Chores - Create Custom Popup
App - Chores - Saving Chore From Popup
App - Chores - Deleting Chore
App - Chores - Final Touches
Networking and API Integration
Introduction to HTTP Request and JSON and Networking in Android
What's an Android Library?
Volley String Request
Volley JSON ArrayRequest
Volley JSON ObjectRequest
App - Recipe Finder - Demo
App - Recipe Finder - User Interface
App - Recipe Finder - RecyclerAdapter
App - Recipe Finder - Parsing Recipes
App - Recipe Finder - Show Recipes on RecyclerView
Firebase Integration
Firebase - Introduction to Cloud-Based Services - Setup
Firebase - Read Values from the Firebase Database
Firebase - Save Objects and Use Push
Firebase - Login User With Email and Password
Firebase - Create Account
WhatsApp Clone Chat App - Demo
WhatsApp Clone Chat App - Setup UI
WhatsApp Clone Chat App - Login
WhatsApp Clone Chat App - Create Account UI
WhatsApp Clone Chat App - Login Users Code
WhatsApp Clone Chat App - Check User - Login
WhatsApp Clone Chat App - TabLayout ViewPager
WhatsApp Clone Chat App - Settings Screen Setup
WhatsApp Clone Chat App - Settings Activity
WhatsApp Clone Chat App - Status Activity
WhatsApp Clone Chat App - Settings Get Image
WhatsApp Clone Chat App - Save Images to Firebase
WhatsApp Clone Chat App - Showing all Users
WhatsApp Clone Chat App - Chat Activity
WhatsApp Clone Chat App - Setup Chat Activity
WhatsApp Clone Chat App - Sending and Showing Chats
WhatsApp Clone Chat App - Final Product
Creating Apps
Developer Portfolio App - Demo
Theme and Colors - Branding
User Interface Setup
UI and TabLayout
Finalizing User Interface and Creating Fragments
Setup PagerAdapter Class
Wiring it all Up
Final Touches and Product
App Demo
Intro to Motivational App
User Interface Setup
Volley Library Setup and App Controller
Fetching Data from the Remote API
Setup Data Classes
Setup Fragments and Viewpager Class
Fix Previous Error!
Final Product - Motivational App
Advanced Topics
Introduction to Drawing on Screen
Drawing Circles
Drawing Images - Bitmaps
Custom TextViews
Intro to Breathe App
User Interface Setup
Setup Animation Library
Setup Shared Preferences - Saving data on Device
Finalizing the App
Final Product - Breathe App
With hands-on projects and real-world applications, this course goes beyond the basics, ensuring a deep understanding of Android development principles. Learn to create seamless user interfaces, implement efficient data persistence with SQLite, and integrate external APIs for dynamic app functionalities.
Join us on this comprehensive journey to becoming a proficient Android developer.
Goals
The course aims to achieve several goals:
Mastery of Kotlin: Develop a strong foundation in Kotlin programming language, covering basic syntax, data types, control flow, functions, and object-oriented programming concepts.
Proficiency in Android Studio: Gain familiarity with Android Studio IDE, understanding its features and capabilities for Android app development.
User Interface Design: Learn principles of UI design in Android, including layouts, themes, views, and resource management to create visually appealing and intuitive interfaces.
Data Handling: Understand various techniques for handling data in Android apps, including database management with SQLite, file handling, and data persistence.
Networking and API Integration: Explore methods for integrating network functionality into Android apps, including making HTTP requests, parsing JSON data, and integrating external APIs.
Advanced Topics: Dive into advanced topics such as RecyclerView, Firebase integration, user authentication, real-time database usage, and integrating cloud-based services.
Project-Based Learning: Engage in hands-on projects and real-world applications throughout the course to reinforce learning and develop practical skills in Android app development.
Prerequisites
The course assumes the following prerequisites:
Basic Programming Knowledge: While the course is designed to accommodate beginners, having a basic understanding of programming concepts such as variables, control flow, and functions would be beneficial.
Familiarity with Object-Oriented Programming: Understanding fundamental concepts of object-oriented programming (OOP) like classes, objects, inheritance, and polymorphism will aid in grasping advanced topics covered in the course.
Computer Literacy: Students should be comfortable using computers and have a basic understanding of operating systems such as Windows, macOS, or Linux.
Internet Access: Access to the internet is necessary for downloading software tools, and resources, and accessing online documentation and tutorials.
Motivation and Dedication: As with any technical course, a willingness to learn, practice regularly, and troubleshoot independently are essential for success.
Curriculum
Check out the detailed breakdown of what’s inside the course
Introduction
2 Lectures
- How's the Course Structured 03:56 03:56
- Where should you start 03:19 03:19
Installation & Setup
1 Lectures
Kotlin Basics
1 Lectures
Conditional Statements and Loops
5 Lectures
Object-Oriented Programming in Kotlin
5 Lectures
Arrays and File Handling
3 Lectures
Android Studio Basics
2 Lectures
User Interface Design
4 Lectures
Activity and Fragment Lifecycle
5 Lectures
Data Persistence in Android
6 Lectures
Networking and API Integration
6 Lectures
Creating Apps
7 Lectures
Advanced Topics
3 Lectures
Instructor Details
Selfcode Academy
At SelfCode Academy, we are more than just an educational platform; we are the gateway to unlocking the world of coding and technology. As a premier EdTech brand, we are dedicated to empowering individuals with the skills and knowledge they need to thrive in the digital age.
Our mission is to demystify the world of coding and make it accessible to everyone, regardless of their background or prior experience. We understand that technology is shaping the future, and coding is its language. That's why we have curated a range of comprehensive coding courses that cater to beginners, intermediate learners, and even seasoned programmers looking to upskill.
What sets SelfCode Academy apart is our commitment to excellence in education. Our courses are meticulously designed by industry experts to ensure relevance, practicality, and engagement. Through our user-friendly online platform, learners can access a variety of programming languages, development tools, and project-based learning opportunities.
We recognize that each individual learns at their own pace, which is why our courses are self-paced, allowing learners to progress in a way that suits their schedule and preferences. We provide a supportive learning environment with dedicated instructors, a vibrant community forum, and interactive resources that facilitate both independent and collaborative learning.
At SelfCode Academy, we believe that coding is not just a skill, but a mindset that fosters creativity, problem-solving, and innovation. Our vision is to equip learners with the ability to turn their ideas into tangible digital solutions, whether it's building websites, developing apps, or shaping the technologies of tomorrow.
Join us on a transformative journey where you'll gain more than just coding skills – you'll gain the confidence to navigate a tech-driven world and make your mark on it. Welcome to SelfCode Academy, where your coding aspirations become a reality.
Course Certificate
Use your certificate to make a career change or to advance in your current career.
Our students work
with the Best
Related Video Courses
View MoreAnnual Membership
Become a valued member of Tutorials Point and enjoy unlimited access to our vast library of top-rated Video Courses
Subscribe nowOnline Certifications
Master prominent technologies at full length and become a valued certified professional.
Explore Now