Skip to main content
Development of an Android application for movie search

Development of an Android application for movie search

Project Overview
#

This was a school project aimed at putting our Android app development knowledge into practice. It lasted 3 weeks and was completed in pairs. The goal was to fully design an application capable of interacting with an API to search for movies.

The project constraints included having at least 3 pages (search, results, movie details) and using The Movie Database (TMDB) API. Beyond these requirements, we were free to add additional features, such as data persistence or language management.

Technical Challenges
#

The first technical skill I improved during this project was using Android Studio. It is a powerful tool with many features, and mastering it takes time and practice. The second challenge was understanding the architecture of an Android application, which can seem complex at first glance due to its numerous folders, configuration files, and more.

I also learned how to handle API calls and process their responses by deserializing them into Kotlin objects. One advantage we had for this project was our prior in-depth study of the Kotlin language during several object-oriented programming courses.

Finally, I deepened my knowledge of programming and optimizing the application’s interface by using complex components like the RecyclerView, which efficiently displays large datasets while optimizing loading and reusing components during scrolling.

Result
#

The application was developed on time and included all the planned features. In total, the app consists of 4 pages. The home page features a selection of movies based on various criteria (popular, upcoming, now playing, and favorites).

From there, users can access the search page, which allows them to find movies by title, release year, genre, and director. Notably, the genre and director fields auto-complete using suggestions from the API. After performing a search, users are directed to the results page, where they can sort movies by popularity or release year. Finally, users can view detailed information about a movie on a dedicated page and choose to add it to their favorites, which are stored locally on their device. An important final note is that the application is available in both English and French, with translations for the interface and API responses.

The project’s source code is available on this GitLab repository: