Intro to Secure Coding and Input Validation in Android
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Intro to Secure Coding and Input Validation in Android
This course is part of Writing Secure Code for Android Specialization
Instructor: Chrystine D Thorsen
Included with
Learn more
Ask Coursera
Recommended experience
Recommended experience
Skills you'll gain
Details to know
February 2026
2 assignments
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 2 modules in this course
This course on Secure Coding in Android Mobile App Development is designed for mobile app developers at a beginner to intermediate level. Participants will understand the necessity of secure coding practices in mobile app development and identify common vulnerabilities and defenses. The course will explore the Android security architecture and controls, as well as Kotlin's security features specifically for Android development. Additionally, learners will gain insights into best practices for Android development security, analyze a vulnerable Kotlin Android app to identify security flaws, and implement effective input validation and sanitization techniques to protect their applications from attacks such as SQL injection and cross-site scripting. By the end of the course, participants will be equipped with the knowledge to validate input forms and evaluate the effectiveness of various input validation techniques in real-world scenarios.
This module introduces the importance of secure coding in mobile app development. It covers common security mistakes, mobile app vulnerabilities, and Android security architecture. Learners will explore Kotlin's security features and Android development security best practices. The module concludes with an examination of a deliberately vulnerable Kotlin Android app.
What's included
16 videos2 readings1 assignment
16 videosβ’Total 180 minutes
- Why secure coding matters in mobile appsβ’10 minutes
- Activity: OWASP Top 10 mobile vulnerabilities, part 1β’11 minutes
- Activity: OWASP Top 10 mobile vulnerabilities, part 2β’12 minutes
- Activity: OWASP Top 10 mobile vulnerabilities, part 3β’13 minutes
- Android security overviewβ’15 minutes
- Activity: Researching Android vulnerabilitiesβ’10 minutes
- Kotlin secure app development overviewβ’11 minutes
- Beginner bonusβ’14 minutes
- Activity: Creating a simple app β Helloβ’15 minutes
- Activity: Creating a simple app - Greetingβ’10 minutes
- Activity: Creating a simple app - Sales tax calculator, part 1β’13 minutes
- Activity: Creating a simple app - Sales tax calculator, part 2β’6 minutes
- Activity: Creating a simple app - Two activities, part 1β’12 minutes
- Activity: Creating a simple app - Two activities, part 2β’6 minutes
- Activity: Creating a simple app - Two activities calculator, part 1β’12 minutes
- Activity: Creating a simple app - Two activities calculator, part 2β’10 minutes
2 readingsβ’Total 20 minutes
- Secure coding in Android student guideβ’10 minutes
- Secure Code in Android activity filesβ’10 minutes
1 assignmentβ’Total 30 minutes
- Introduction to secure coding quizβ’30 minutes
This module focuses on implementing input validation as a fundamental security mechanism. It covers risks associated with untrusted data, input sanitization techniques, and defenses against SQL injection, cross-site scripting, and cross-app scripting. Learners will also explore null safety, string interpolation, and form validation in Kotlin.
What's included
52 videos1 assignment
52 videosβ’Total 486 minutes
- Understanding input risksβ’15 minutes
- Autocompletion, part 1β’11 minutes
- Autocompletion, part 2β’9 minutes
- Activity: Securing autocompletionβ’5 minutes
- Special characters, part 1β’11 minutes
- Special characters, part 2β’6 minutes
- Using special charactersβ’11 minutes
- Null safetyβ’12 minutes
- Safe call operatorβ’5 minutes
- Not null operatorβ’4 minutes
- Elvis operatorβ’7 minutes
- Cast operatorβ’8 minutes
- Smart castβ’9 minutes
- Implementing null safety, part 1β’12 minutes
- Implementing null safety, part 2β’13 minutes
- Implementing null safety, part 3β’15 minutes
- String interpolationβ’11 minutes
- Understanding string interpretationβ’15 minutes
- Format string attacksβ’8 minutes
- Regular expressions, part 1β’14 minutes
- Regular expressions, part 2β’6 minutes
- Activity: Working with Regular Expressions in Kotlin, part 1β’14 minutes
- Activity: Working with Regular Expressions in Kotlin, part 2β’10 minutes
- Validating inputβ’15 minutes
- Input sanitizationβ’7 minutes
- Activity: Sanitizing Inputβ’4 minutes
- Activity: Clamping input to a rangeβ’5 minutes
- Kotlin filter and trimβ’7 minutes
- Activity: Filtering and trimming inputβ’10 minutes
- Cross-site attacksβ’14 minutes
- Activity: Exploring cross-site scriptingβ’10 minutes
- Cross-app scriptingβ’5 minutes
- Activity: Defending against cross-app scriptingβ’9 minutes
- Code tampering and injection, part 1β’7 minutes
- Code tampering and injection, part 2β’11 minutes
- Code tampering and injection, part 3β’9 minutes
- Activity: Filtering a malicious QR code, part 1β’9 minutes
- Activity: Filtering a malicious QR code, part 2β’4 minutes
- SQL injectionβ’14 minutes
- SQL stored proceduresβ’5 minutes
- Object deserialization, part 1β’5 minutes
- Object deserialization, part 2β’4 minutes
- Activity: Protecting JSON with an API key, part 1β’16 minutes
- Activity: Protecting JSON with an API key, part 2β’5 minutes
- Form validation, part 1β’12 minutes
- Form validation, part 2β’10 minutes
- Form validation, part 3β’6 minutes
- Activity: Validating form input, part 1β’13 minutes
- Activity: Validating form input, part 2β’5 minutes
- WebView vulnerabilities, part 1β’12 minutes
- WebView vulnerabilities, part 2β’10 minutes
- Activity: Securing Android WebViewβ’12 minutes
1 assignmentβ’Total 30 minutes
- Input validation quizβ’30 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor
Offered by
Explore more from Mobile and Web Development
- Status: Free Trial
Course
- Status: Free Trial
- Status: Free TrialI
Infosec
Specialization
- Status: Free Trial
Course
Why people choose Coursera for their career
Frequently asked questions
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you canβt afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, youβll find a link to apply on the description page.
More questions
Financial aid available,
