Online Complaint Management System Android App with Source Code

We offer you a brighter future with FREE online courses - Start Now!!

In this tutorial, you will understand how to build a basic complaint management application using Android Studio.

What is a complaint management App?

A complaint management app is basically an app to manage and resolve the queries of the people. It can be used by companies to resolve the queries of their customers or it can be used by the government to resolve the queries of the public/people.

The Flow of the Application

This is an application to resolve the queries of the public. This app will be used by people to complaint about problems in their local area. Problems like garbage, water-related problems, etc will be taken to the municipal corporations and they will see the problem and will resolve the problems.

There will be 2 panels in this app. The first is a user panel and the second is a government panel.

User Panel

In this panel, the user or the public will put their complaints about problems in their local area. This will have a login and signup screen. After that, there will be a dashboard. The users can see their complaints on the dashboard and the status of the complaint. The user can also add new complaints and add images to state their problems more clearly.

Government Panel

In this panel, the government will see all the complaints added by the public and will resolve them. This will also have a login and signup screen. After that, there will be a dashboard. The government can see all the problems placed by people on the dashboard. They can click on any problem and solve the issue and change its status to work in progress or complete so that the user who posted the complaint can see it.

Features of Complaint Management app

1. There are two panels in the app.

2. The first panel is the user and the second panel is the government panel.

3. Login and signup for both the panels.

4. Users can add new complaints.

5. Users can add images of complaints.

6. Users can see all of their complaints and their status.

7. Government can see all the complaints posted by people.

8. Category-wise complaints.

9. Government can open any complaint to resolve it.

Software Requirement

You should be familiar with the following tech to understand the project.

  • Java – Our application logic is written in Java.
  • XML – The application is designed using the XML markup language.
  • Firebase – Firebase will be used as the backend in this project.
  • Android Studio – It’s a platform that allows us to create apps for Android devices.

Hardware Requirement

Hardware configuration to build this project:

  • 64 Bit Windows 8/10
  • Minimum 4GB ram for android studio
  • Minimum 12GB of disk space for SDK, java, and IDE
  • 1280 x 800 minimum screen resolution

Developing the Complaint management app

Let’s look at the files that we created for the complaint management app.

1. Activity_main.xml is the first file that will contain our code of dashboard.

2. There is a that will handle the logic part of the above files.

3. After that, we created some files for our login and signup screens and their corresponding java files to handle its logic.

4. We created the files for the user and government dashboard. Also, we created their java files to handle their logic.

5. Some other important files

  • Themes.xml: Theme of the app

Files Required

Activity_main.xml :

        tools:listitem="@layout/complaint_list_item" />

The above xml code is the code of the recycler view. This recycler view will show all the complaints the user has posted. :

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
View view = LayoutInflater.from(MainActivity.this).inflate(R.layout.alert_add_complaint, null, false);

EditText et_description = view.findViewById(;
iv_complaintImage = view.findViewById(;
Spinner spino = view.findViewById(;
Button btn_create = view.findViewById(;

ArrayAdapter ad = new ArrayAdapter(MainActivity.this, android.R.layout.simple_spinner_item, courses);


AlertDialog alertDialog = builder.create();

storageReference = FirebaseStorage.getInstance().getReference().child("Uploads");

iv_complaintImage.setOnClickListener(new View.OnClickListener() {;

This code will be used to add a new complaint by the user. This will open a dialog box. In that dialog box, you have to add your new complaint.

Download Online Complaint Management Project

For the actual implementation of the online complaint management android app, please download the source code from the following link: Online Complaint Management Project

Once you have downloaded the DataFlair Complaint Management project, you can proceed with the following steps:

Steps to implement the Project:

The DataFlair Complaint Management App can be implemented by downloading the source code and following each step listed below.

1. Unzip the source code.

2. Go to the unzipped folder and open the project in android studio.

3. Click on tools and firebase and click on authentication to connect your app to firebase. This is not a necessary step. This step is needed only if you want to connect your app to your firebase.

4. Click on run and it will start running on your virtual device.

Android Online Complaint Management App Output

The application will look like this.


android online complaint management app output

User dashboard

user dashboard

Add a water complaint

add a water complaint

Adding a remark

adding complaint remark

Complaint updated on the user dashboard

complaint updated user dashboard


This article helps you understand how the online complaint management app works. In this tutorial, you will learn how to build a basic app. You can also add even more features to this like search features and customization features to your app.

Did we exceed your expectations?
If Yes, share your valuable feedback on Google

follow dataflair on YouTube

4 Responses

  1. Shakthi B says:

    Hi there!
    Runned the project in amdroid studio and the build on my phone. everything was going good, but when adding a complaint, the app just crashes! Is it because i havent set up firebase on anything else?
    I really need this!

  2. Rahul says:

    Android language setting language Android phone ka naya setting language banane ko boli Google ko Bharat newzealand language samajhte nahin hua Android 9 ka system update

  3. Sai Tejaswi says:

    when i am creating complaint and pressing the create button the app crashes. it is not creating the complaint

Leave a Reply

Your email address will not be published. Required fields are marked *