iOS 12 Chat Application like WhatsApp and Viber

iOS12, swift 4.2, xCode 10, whats app, chat, messenger, push notification, call, social media, ios development

4.35 (431 reviews)
Udemy
platform
English
language
Mobile Apps
category
instructor
13,814
students
32.5 hours
content
Feb 2022
last update
$64.99
regular price

What you will learn

the course will cover many topic of iOS development.

By the end pf this course you will have your own copy of whatsapp with all the functionalities

Description

In iOS12 Chat App we are  going to build real world iOS application. And when I say real world, I mean you can use this App every day, communicate with friends and family!

Unlike any other courses found on Udemy, I always teach full real world apps, when we finish with the course, you are going to have an app ready to post to AppStore. This iOS12 Chat Application can easily replace your native iOS chat app or WhatsApp. It will have all functions that WhatsApp provides.

What our app will include:

  • One on one chat

  • Group chat

  • Multimedia messages (Photo, Video, Audio, Location)

  • Fully end to end encryption

  • Push Notifications

  • Call function

  • CallKit

  • PushKit

  • Firebase users Authentication

  • Firebase storage

  • Firebase firestore (new real time database from firebase)

  • Phone number authentication

  • Custom uicollection views

  • Custom UITableviews

  • OneSignal

  • Sinch

  • Git Source control 

  • the app covers many more topics its  impossible to include all of them here


This iOS12 Chat App is NOT beginner level course. You need to know your way around the xCode, be familiar with it, you have to have basic knowledge in Swift and application building. We are going to start from scratch and build the application together. All assets will be provided by me. I will type and explain every line of code. the course is around 35 hours long. And by the time we finish, you will learn a lot of new things even if you are experienced iOS developer.

The curse will teach you how to write clean code, structure your app development, so even if you get back to your code in few years, you can read and understand it clearly. 

We are also proud to say that we have one of the best Support available on Udemy! Our Q/A Section is constantly monitored and all questions are answered within few hours, Sometimes we even chat with students in real time to help them with the issues they may face during the study.

Don’t waste your time on low quality courses where you don't even get support of the instructor

Your time is precious. We offer the best video courses with carefully crafted content, we are learning by coding!


Don't just take our word for it, check out our other courses and what other students have to say about our courses!


"This course is so far the best course I took in UDEMY. I really learned something. Totally worth the time. Won't regret it. The instructor was responsive too and the course is new and knowledgeable."  J Nima

"A excellent Tutorial by david. Very good explanation" Tapan Kumar Raut

"There is nothing on Udemy like David's courses! I cannot recommend his courses enough. Best teacher out there, very responsive as well. " Kris

"I really do love the approach, the structure of the course gives you the ability to move forward smoothly, and efficiently gain as much knowledge as possible, the instructor really goes in-depth, it's incredibly comprehensive, not to forget that this is a real world project, and the advanced concepts gained here make me all confident that i'll be able to build my own apps in a very effective way. the course is well taught, and it really deserves the 5 stars, the instructor as well, he explains things in a very clear, clean way. Definitely enjoying the Course. and definitely Thumbs Up." Yen Loo

"This is one of the most complete and comprehensive iOS projects on Udemy! Everything works! No broken code! You learn Firebase, Onesignal and Backendless in one project. The instructor is always accessible, he goes for quality not quantity. I still have a way to go, but so far it has kept me completely engaged and focused! I wish there were more courses like this! I will definitely purchase another from David." antr8tr


We are so confident that you'll love this course that we're offering a FULL money back guarantee for 30 days, No Questions Asked! So it's a complete no-brainer, sign up today with ZERO risk and EVERYTHING to gain.

So what are you waiting for? Click the Buy Now button and join the best iOS 12 Chat App development course and lets get started.


Content

Getting started

Getting the xCode

Welcome View

Setting up the user interface
Connecting UI with code
Adding cocoapods
Creating firebase project
Download assets
Adding Assets to project
Login and Register user functions
Login User function
Register user function part 1

Finish registration view

Finish registering user (creating profile) User interface
Profile view connections
Segue from Welcome view to Profile view
Cancel button function in profile view
Done Button functionality
Register User
Finish registration function
Save first users to firebase
Registering user
Testing login function
Implementing autologin
Log out user
Creating more users

Displaying users from firebase

Users Table View Controller User interface
Custom table view cell for users part 1
Custom table view cell for users part 2
Users Table View Controller code part 1
Users Table View Controller code part 2 (Search users)
Load users function part 1
Load users function part 2
Load users function part 3
Setting Big titles for chats
Search Users part 1
Search Users part 2
Search Users part 3
Search Users part 4
Search Users part 5 fix errors

Profile View Controller

Profile View User Interface
Profile view connections part 1
Profile view connections part 2
Profile view connections part 3 update block status
Block user function
Changing file/folder structure

Recent Chats

Starting Private chat
Create Recent chats part 1
Create Recent chats part 2
Saving first recent chat to firestore
Recent chats custom cell
Implementing code for custom cell part 1
Implementing code for custom cell part 2
Implementing code for custom cell part 3
Implementing code for custom cell part 4

Recent Chats view controller

Chats view controller (table view functions)
Chats view controller (Loading recent chats)
Chats view controller (Display first recent chat)
Custom header view for group chat button
Recent avatar tap function
Searching recent chats
Delete and Mute buttons for recent chats
Delete function implementation
Restarting existing chat

Chat view Controller

Chat view controller part implementation
Display chat view controller (and fix errors)
Fixing UI for iPhone X
Adding microphone button and custom back button
Implementing send button and accessory button functions
Displaying option menu for accessory button
Updating send button UI
Send Message function

Outgoing message Class

Outgoing Message part 1
Outgoing Message part 2
Send text message
Saving first text message to firestore
Incoming message class (text messages)

Back to chats view controller

Loading chats part 1
Loading chats part 2
Insert messages function
Inserting initial loaded messages
JSQMessages DataSource functions
Timestamping messages and delivery status part 1
Timestamping messages and delivery status part 2
Fixing delivery status
Listening for new chats
Loading old chats in the background
Loading earlier messages
Testing load earlier message button
Custom headers for chat view
Setting the custom heders
Setting withUser functionality for our chat
Test run to check custom headers
Camera class and image picker controller
updating permissions in info.plist
Uploading images to firebase storage part 1
Uploading images to firebase storage part 2
Send picture message function
Sending first picture message
Download Image part 1
Download Image part 2
Creating JSQ photo image
Creating Photo Message
Test run to receive first picture message

Video Messages

Uploading video file
Initializing video message
send video message function
Sending our first video message
downloading video
Video Message class part 1
Video Message class part 2
Test run to get first video message
Play video message
Showing picture message on separate view

Audio Messages

Upload audio message
AudioRecorderViewController
Presenting audio recorder VC
Sending first audio message
Downloading audio
Test run to display audio message

Location messages

Initializing location manager part 1
Initializing location manager part 2
Checking if location is available
Initializing location message
Sending first location message
Create incoming location message
Receive and display location message
Map View controller UI
Map view connections

Updating message read status

Listening for updated messages
Saving read status to firestore
Test run to see read status

Typing indicator

Create typing observer
Start stop typing counter
Typing indicator test run
Remove listeners from chat view

Chat avatars

Showing avatars part 1
Showing avatars part 2
JSQAvatarDataFunction
Showing ProfileView on avatar tap

Pictures collection view

Pictures collection view User Interface
Pictures collection view code
Saving media message links in Chat VC
Test run media messages view
Error fixing in media messages view

Updating Recent Chats

Clean recent counter
Updating recent chat last message
Mute/Unmute functions
Deleting recents of blocked users
Checking blocked status on chat start
test running blocked chat
Starting chat from profile view

Delete messages

Delete message function
Test run delete functions

Settings View Controller

Settings User Interface
Settings User Interface connections
Setting up user cell
Avatar Switch status change
Saving and loading user defaults
Tell a friend and delete account functions
Deleting user account
Clean cache function
Showing the app version in the settings
Blocked Users User Interface
Blocked Users coding
Unblocking users from Blocked view
Sowing notification label if no blocked users
Backgrounds collection view UI
Backgrounds coding
T&C view
Edit user Info UI
Edit User code part 1
Edit User code part 2
Test Run Edit User profile

Contacts View

Contacts View (with Assets)
Contacts view Code part 2
Contacts view Code part 3
Contacts view Code part 4 load users
Showing contacts view from chats view
Did select contact part 1
Did select contact part 2
Test run to check nearby users

Group Chats

Create group User Interface
Custom collection view cell
New group connections
New Group class part 1
New Group class part 2
New Group class part 3 show camera options
New Group class part 4
Create group button part 1
Group Class
Create first group chat
Group chat recents
Group recent error fix
show group info in the chat
Group View User interface
Group view Code part 1
Group view Code part 2
Invite users view part 1
Invite users view part 2
Invite users view part 3
Presenting Invite users View
Done button in Invite view
Updating group name and avatar
Showing chat background
Fixing background image size.
New assets for background images

Encryption

Encryption
Sending Encrypted Messages
Sending encrypted messages error information

Image Picker library

Image picker (fixing the library)
Saving User with Avatar image
Editing user's avatar image
Group Avatars

Push Notifications

Creating push notification certificates
Create OneSignal Application
Connecting OneSignal SDK
Start OneSignal and save PushID
Saving Push ID on user login
Testing Notifications
Saving Push Id to firestore
Push Notification functions
Receiving 1st ush notification
Push Notification bug fix
Updating user online status

Call View

Call View User Interface
Call Class part 1
Call class part 2
Call Class part 3
Custom Call Cell
Call TableView part 1
Call tableview part 2 (searching calls)
Call tableview part 3 (load calls)
Saving 1st call
Deleting calls

Call

Installing Sinch
Init Sinch and create sinch App
Create VOIP certificate
Sinch Managed Push
Presenting missed call notification
Registering for PKPush notifications
Remote notification delegates
Call User interface
RNCryptor Fix
Call View Controller part 1
Call view controller part 2
Call View Controller part 3
Call view controller part 4
Call view controller part 5
Showing call screen
Caling other user
Badge count
Showing badge count
SIN call notification keys

Mobile Authentication

Mobile Authentication User interface
Mobile Auth code part 1
Mobile Auth code part 2
Preparing to run on device
Registering user on device
Creating first user with phone uthentication

CallKit and Updates

Resources for CallKit
Updating to CallKit and Push increment fix

Screenshots

iOS 12 Chat Application like WhatsApp and Viber - Screenshot_01iOS 12 Chat Application like WhatsApp and Viber - Screenshot_02iOS 12 Chat Application like WhatsApp and Viber - Screenshot_03iOS 12 Chat Application like WhatsApp and Viber - Screenshot_04

Reviews

Zied
April 10, 2023
the copy paste part at the beginning was disturbing, but good content in general just avoid copy paste even if you are going to explain later most firebase functions wasn't explained (what is firestore, how it works, when its free, when it starts cost money ... ) then with code inside Auth function what happens ... i maybe wrong if the tutorial is for advanced levels then it's cool
Ferry
December 26, 2021
This tutorial is a real world case not like many other course, David show you how to use class and function in a real production app. I believe a course should be like this, teaching you the structure how a real app made in company like startup so the developer when they jump in tech company, they have prepare for a course like this.
Sarthak
August 8, 2021
The instructor is not at all clear about what he is teaching. He is just copying and pasting the code and reading the lines. Haven't taken a course worst than this. It is actually not a course to teach you how to build a chat application, rather it is just a already provided code base, with a person just reading the lines of codes.
Nadim
February 17, 2021
This is the worst online course I ever have watched. Too much poor content. Only copy and past code video.
Fausto
September 28, 2018
I covered already 64 videos and looks perfect so far, David personally handled some answers to my questions, fast and complete answers, I find everything very good so far
Namazci
August 29, 2018
Tanıtım videosunu izledim ve içerik tam istedeğim gibi umarım devamı da kolay ve anlaşılır olur. Teşekkürler
Michael
August 18, 2018
The instructor needs to provide coding examples so we can look over specific parts of the code that aren't shown by the instructor yet are integral to coding along. Like he calls a variable that I have no idea how he defines it so I can't call that variable. I am not going to look through hours of irrelevant instruction so that I can learn what that one variable is. But if the instructor provided coding examples, I could quickly locate it and follow along.
Hansome
August 11, 2018
Best N Fresh Course Of IOS as well as include project based app :). Highly Recommend also the instructor in this course is so responsive i.e he gives the answer so fast in Q & A section without hesitating.
Antonio
August 9, 2018
its a cool application by I think the instructor really don't care about code organization, but its comprehensive because he never mentioned it as part of the curriculum, but I think the code is really messy you could easily been improved and I don't think the app is scalable at all
Yazdani
August 8, 2018
Best course.i learn how to built a real world apps.Thanks instructor,you are awesome.All the best for your course.
J
August 2, 2018
This course is so far the best course I took in UDEMY. I really learned something. Totally worth the time. Won't regret it. The instructor was responsive too and the course is new and knowledgeable.
Shiva
July 28, 2018
Would be better if David did the READY FILE swift files while doing the class rather than just giving it to us. I think those files are tougher to do and would be good if there was a walkthrough. Aside from that, this course is excellent. Learning a lot.
Sajawal
July 5, 2018
The instructor reply to your messages and also answer you on Q/A Sections which is cool. I didn't finish the course yet. I like the course as of now. I suggest him to add a video call feature as well.
Gulam
June 21, 2018
instructor explains each an every thing very clearly.loved the way of teaching.. I wish I could meet him personally and say thanks in person for making this course in a very good manner. Thanks
Kristina
June 20, 2018
There is nothing on Udemy like David's courses! I cannot recommend his courses enough. Best teacher out there, very responsive as well. Keep up the good job!

Coupons

DateDiscountStatus
7/6/2019100% OFF
expired

Charts

Price

iOS 12 Chat Application like WhatsApp and Viber - Price chart

Rating

iOS 12 Chat Application like WhatsApp and Viber - Ratings chart

Enrollment distribution

iOS 12 Chat Application like WhatsApp and Viber - Distribution chart

Related Topics

1641598
udemy ID
4/11/2018
course created date
7/1/2019
course indexed date
Bot
course submited by