
Welcome to Android App Development with Laravel Authentication. In this course, we are going to build a mobile app and we want to learn about Authentication in Mobile App using the Laravel PHP Framework as a backend system.
In this video, we will walk through the demonstration of the app that we are going to build. The app has four features; Registration, Login, Logout and Home Screen.
In this video, we are going to explore the technologies that we will use throughout the course. As mentioned, the backend will be developed using Laravel a PHP Framework and the API will be managed using a package called Laravel Passport. On the other hand, we will use Kotlin as the Language of choice and recommended by Google and the UI will be built using Jetpack Compose.
In this video, we are going to install Laravel Framework and Laravel Passport by using the guideline from the Laravel Documentation. once the installation is done, we will take a look at configurations of the Laravel Passport.
In this video, we are going to start writing code and we are going to start writing codes for Registration Controller in Laravel.
In this video, we are continuing to write the backend system in Laravel by implementing the Login Controller.
In this video, we are going to implement an issueToken trait. In Laravel, Traits are a collection of reusable methods that are accessible in multiple classes.
In this video, we are going to implement logout and refresh token functionality in Laravel. The refresh Token function is important since the token issued during Login or Registration has an expiration time. Hence, once the token has expired, you can use a refresh token to obtain a new Token.
In this video, we are going to create routes for our APIs, routes that will provide resource location addresses for backend APIs. Routing in Laravel allows you to route all your application requests to their appropriate controller.
In this video, we are going to finalize this section by testing our APIs if are working okay or not.
In this video, we are going to create a new project in Android Studio, by definition Android Studio is the official integrated development environment (IDE) for Android application development. It is based on the IntelliJ IDEA, a Java-integrated development environment for software, and incorporates its code editing and developer tools.
In this video, we are going to prepare the dependencies used in this app using Gradle. Android Studio uses Gradle, an advanced build toolkit, to automate and manage the build process while allowing you to define flexible custom build configurations.
In this video, we are going to explore the structure of an Android App in Android Studio. In addition to that, we are to start creating the folders and some important files required for our project.
In this video, we are going to start writing code in Android Studio as mentioned using the Kotlin programming language. We are going to define all the models required in our App. The model implements your business logic.
In this video, we are going to implement the Network Service interface using Retrofit. Normally, Network requests are used to retrieve or modify API data or media from a server. In addition, Retrofit is a type-safe REST client for Android and Java that aims to make it easier to consume RESTful web services.
In this video, we are going to implement a Repository. Repository is a class whose purpose is to provide a clean API for accessing data. This is to say, the Repository can gather data from different data sources(different REST APIs, cache, local database storage) and it provides this data to the rest of the app.
In the previous video, we implemented a Login function in the repository. In this video, we are going to continue implementing the repository by adding a new function of registration.
In this video, we continue implementing the repository by adding additional functions; Getting Auth User and Logout
In this video, we are going to implement the Dependency Injection (DI) and our focus is to provide our app with the following advantages:
Reusability of code
Ease of refactoring
Ease of testing
In this video, we are going to prepare our app assets as we are about to start working on the UI.
In this video, we are going to start with some basic and easier parts to begin our UI development. Therefore, we are going to start working with the Application file and Main Activity.
In this video, we are going to start by creating the Login Screen for our app and probably this could be the starting point to see the screen of our app.
In this video, we are going to connect data from the repository with UI using a ViewModel. The ViewModel is designed to store and manage UI-related data in a lifecycle-conscious way.
In this video, we are going to handle errors that are coming from the Server in the ViewModel.
In this video, we are going to connect the functionalities implemented in the ViewModel to the Login Screen.
In this video, we are going to perfect our Login Screen to listen for events as being handled in the ViewModel.
In this video, we are going to learn debug technics in Android Studio.
In this video, we are going to discuss how I have implemented the Registration Screen and its ViewModel since it is more or less similar to what we have covered in the Login Screen.
In this course, we are going to learn how to develop an Android App that can allow users to Register, Login and Logout where the APIs come from the Laravel Application. Laravel is a PHP Framework that follows the MVC (Model View Controller) Architecture. And we are going to use Laravel Passport to secure our APIs and allow users to obtain tokens that can be used to consume the API. This is to say, Laravel Passport provides a full OAuth2 server implementation for your Laravel application.
On the other hand, we are going to use Kotlin programming language to build an Android App, Kotlin is a recommended language by Google to develop Android Apps. You can run side by side with Java while being easier to write. If you want to develop Android apps or multi-platform applications with the JVM, you can do it quicker and simpler with Kotlin than with Java that is why we have chosen Kotlin in this course.
In addition, we’re going to use Jetpack Compose which is a modern toolkit for building native UI for Android. Jetpack Compose simplifies and accelerates UI development on Android. Quickly bring your app to life with less code, powerful tools, and intuitive Kotlin APIs.