You are required to implement an Android application using Kotlin and Jetpack Compose described by the specifications below.
You are not allowed to use third-party libraries. The only libraries that you can
use are the standard Android API libraries found in the following URL (with the
exception of Views that you should NOT use):
It is important to follow exactly the specifications and your implementation must
conform to these:
The application developed will be helping users to obtain information about football clubs.
The application will be using the Web service
and the Room Library to save information about clubs.

  1. When the application starts, it presents the user with 3 buttons labelled Add Leagues to
    DB, Search for Clubs By League and Search for Clubs. (2 marks)
  2. Clicking on the Add Leagues to DB button saves all the details of a few football leagues
    (from different countries) in an SQLite database which is local to the mobile device
    using the Room library. The specific information of the leagues which will be saved is
    shown in the following link and the information saved could simply be hardcoded in the
    An appropriate database with appropriate tables should be created and populated by your
    application, based on the above data.
    (20 marks — 10 marks for the creation of the database and 10 marks for its population)
  3. The application is using the following Web service:
    The documentation of how to use the Web service is in the above web page. For example,
    the following request (type this in your web browser):
    will give you back the results (in JSON format) of searching all football (soccer) leagues
    in “England”.
    Clicking on the Search for Clubs By League button will present the user with a screen
    displaying a single textbox and 2 buttons Retrieve Clubs and Save clubs to Database.
    The user will be using the textbox to type the name of a football league and click the
    Retrieve Clubs button to retrieve from the Web service all the details of all the clubs
    which compete in this league. The details of each club will be displayed as part of the
    same screen of the application in the following format, for example if the user searches for
    “English Premier League” as a league (the output here displays only 2 clubs, but the app
    should display ALL the clubs from the given league):