Do you want to learn how to create an offline first Retrofit Full CRUD app with disk caching? Do you want to learn how to use Model View ViewModel design pattern in a full app with Retrofit? Do you want to learn how to perform CRUD operations against MySQL database from an android app using Java?
ABOUT THIS PROJECT
This project is designed for students to help them learn create a full android app based on Retrofit as the HTTP Client and MySQL as the database. We use Java as the programming language. PHP is our server side language and data will be transmitted in JSON format via HTTP. GSON will be used to parse the JSON but this will be done automatically via Retrofit.
Do you want to get the essentials of Retrofit without needing weeks of study? Do you want to be able to put up a CRUD app capable of INSERTING, SELECTING, UPDATING, DELETING, SEARCH and PAGINATION in a real world app without months of study? Do you want to create a real world app in minutes by modifying quality source code instead of re-inventing the wheel? Do you need a reusable template to implement that idea you have always wanted then upload your app to Google Play?
Well then this app is for you. This project is cheap but alot of work has been done to make it easy to understand, modify and high quality. I have seen alot of apps being created with this template by students and we will continue adding more features and updating code. You will get those updates for free and lifetime support including setting up your online MySQL database.
This is a Full Sports Multi-Admin News App based on retrofit2 and mysql database. Users are authenticated using phone numbers and pins. Users without accounts signup. We auto-pick phone numbers as well as user names from the device with the user’s permission.
Read more HERE for complete description of this app as well as code samples at what you are purchasing.
Do you want to learn Room, MVVM, LiveData while creating a real world project? What about creating a beautiful Scientists App. This is a unique idea and you can easily come up with a different idea and modify the app towards it. This easy, all you need is change the model class and maybe the fields.
This app is meant to teach you learn the concepts you need to be able to utilize the following Android Jetpack components:
Utilize MVVM(Model View ViewModel)
Use LiveData to add reactivity to your application.
Use VeiwModel to prepare user interface data in a lifecycle aware manner.
Use Room as our data access layer.
Here are the screens built in this app(View them in the gallery in the sidebar):
This is a Firebase Cloud Storage + Firebase Realtime Database project. You learn how to Upload/Download/Update/Delete/Paginate/Search data, in the process creating a full app. In this case we are creating a Largest Stars App but you can be creative and modify it based on your own idea. This is easy as even though this is a full app, it’s designed to be used as atemplate for creating other projects. Alot of care has thus been taken while designing the code and we chose to use the Model View ViewModel pattern recently added to android development by Google.
By using Clean Architecture, we’ve made this project easy to follow and understand and extend. The code is high quality and tested against common errors and therefore will not crash easily. When an operation is being performed, for example uploading data to Firebase, a progress card is shown which shows you exactly the operation currently ongoing. If an error is raised, the error is displayed in the card. Because of this you can easily understand what the app is doing even without looking at the code.
Daily Chores App is a full android application ready for Play Store. All you need to do is change name, colors, logos etc and make it your own. Of course as a programmer you can extend it with more features. The source code is high quality and given that we’ve utilized Clean Architecture as a design pattern, you can easily understand and follow the code.
Do you want to learn how to create a Full Firebase application using Model View ViewModel? Do you want to learn how to perform all CRUD operations: Create/Insert, Read/Select, Update/Edit and Delete against Firebase Realtime Database? Do you want to learn how to search data against Firebase Realtime Database? Do you want to learn how to Paginate/Page Firebase realtime data using load more technique? Do you want to learn how to create a full application with Splash Screen, Dashboard Screen, Listing Screen, Detail Screen, Search Screen and CRUD Screen?
Then this may be the project you are looking for. We’ve taken a lot of time testing this code and calibrating it to make sure it’s easier to understand and can be easily understood and extended.
The advantage of this type of project is that it eliminates away all the research and trial and error that you always undergo if you intend to learn something. Moreover we’ve employed the best techniques thus you are getting high quality code.
This code is designed for students who don’t have time to go through tons of manuals and want to learn by doing. It is however designed to make it friendly and even beginners can understand the code and extend it.
This is the Largest Stars App written in Kotlin(Java version also included) designed to teach the following concpets:
Kotlin and Java Programming Languages
Model View ViewModel(MVVM) in both Kotlin and Java.
Retrofit2 + PHP + MySQL
Multipart Uploads, Downloads, Update, Delete.
Server side Load more Pagination.
Creating a full app with several templates.
In short you learn how to create a full app in the fastest way possible using high quality,easy to understand code rather than going through tons of tutorials and manuals. Code is commented and variables are well named. We also offer lifetime support and updates to our students. Read documentation here.
This is a full offline task planner app created exclusively in Kotlin. It is extremely beautiful and simple to use. The app allows users to create tasks and save them in database. We use MVVM design pattern.
Do you want to learn how to upload/download/update/delete images and text stored in mysql database? D you want to learn how to create a full android mysql retrofit application? Do you want to learn Retrofit Multipart Upload in the context of a full application? Well then this is the project for you.
There are two projects included one written in Kotlin and another in Java. We utilize Retrofit 2, the most popular third-party HTTP Client. Data will be stored in a server online or localhost. That data include both images and text. We upload them at a go via single HTTP request thus making the operation not only efficient but less likely to fail.
The images will actually be stored in a folder the server. Then the image paths alongside other properties are stored in MySQL. When we retrieve data via a HTTP GET or HTTP POST request we fetch the data text stored in the database. The images are then efficiently loaded using Picasso asynchronously and rendered alongside texts in our recyclerview.
We will provide two ways of updating data. First users can update both image and text in a single asynchronous call. With this the image is replaced in the server and the new image path is saved in the database. This method will automatically be used when user selects a new image using imagepicker or captures image directly from the camera.
However if user changes only text and doesn’t change the images, then instead of making a multipart request we will just make an ordinary request and update only text without the image. This makes our update efficient as there is no reason to re-upload the same image twice just because the user has changed the text.
You will also learn how to delete data from mysql database as well as images from our server using Retrofit. We will do both in a single request. First we delete the image from the server then it’s path as well as the whole row the user has requested to be deleted.
Deleting is simple as we only need to send the row id to be deleted.
(d). FETCHING with Pagination
You will also learn how to fetch data from MySQL database via Retrofit. We provide two methods for fetching. One using a HTTP GET request. This method when invoked will fetch everything in a single call.
Then the second using a HTTP POST request. This will allow us to fetch paginated data. By default in the app we use the second method to fetch paginated data as the user scrolls.
(e). Offline First
Data is also cached on the device locally using LRU(Least Recently Used) disk caching library. Thus even without internet connectivity and even after restarting the device, users can still view the data. This makes the app faster, efficient and bandwith friendly. You can specify the cache size. If your size is exceeded, data is purged based on the LRU concept. The Least Recently Used ones get purged first.
(f). Capture From Camera,Gallery,File Picker
This app implements for you the ability to capture images directly from camera. You can also pick already captured images from gallery. Moreover you can even pick images from the file explorer using directly from our upload page. You are asked to choose which method to use using a bottom sheet dialog. Runtime Permissions are implemented for you already.
The app will contain several screens:
Upload Activity – Activity used for uploading our data, both images and text. This same activity will also be used for updating existing data as well as deleting data. It’s probably the most important activity in the project.
Listing Activity – This is our recycerview activity. It is used for rendering data. Both images and text are rendered nicley in a cardviews. At the top we have a carousel which slides through the fetched images automatically.
Detail Activity – This, as the name suggests will render the details of a single Star object. We use CollapsingToolbarLayout with NestedScrollView containing a CardView with our details. There is also a menu item as well as a Floating Action Button that when clicked takes us to the Upload Activity for editing/deleting the selected Star object.
Splash Activity – Just good old splash screen. Optional in this type of app.
Dashboard Activity – This like the menu activity or the home activity. From it you can navigate to other parts of the application.
About Us Activity – You can use this to show your contacts info etc.
This is a perfect project to use as a template or learn Firebase, Room and MVVM Design pattern while creating a full project in Java. These are currently hot technologies and it’s not easy to find a full project that has is high quality yet easy to understand and customize. We design these projects of ours primarily to help beginners who want to learn faster but in the right manner.
This project will teach you how to write data to Firebase Realtime Database, Read from it, show in a recyclerview , view details, edit data and also delete an item. Thus you can be creative and create a new unique project since those are the operations that you majorly need.
Here are the UI interfaces we create for example:
Useful for portraying your brand to your app users.
Center of our app. Acts like our homepage.
Will host our fragments.
Will show details of a single clicked item.
One activity that allows us do three things: POST DATA, UPDATE DATA and DELETE DATA.
Will render items fetched from Room(SQLite database).That is our Firebase data that is cached locally.
If there is no data in our SQLite database this fragment will automatically be opened and it will fetch our data, cache it locally and render it in a recyclerview.
Will allow us to search and filter our data.
Major Concepts and Technologies You’ll Learn
Caching Firebase data in SQLite using Room.
Firebase realtime database CRUD operations.
Model View ViewModel and Lifecycle components like MutableLiveData.
Creating a full real world project with several user interfaces like dashboard, listing, detail crud, search/filter,tabs etc.
Using several widgets like RecyclerView, CardViews, CollapsingToolbarLayout, SingleChoiceDialogs, MaterialDatePicker,material edittexts, MaterialLetterIcon, SearchView, TabLayout and ViewPager etc