Mobile App Development Project: Activity Recorder Design and Report

Verified

Added on  2022/02/10

|7
|820
|30
Report
AI Summary
This report provides a comprehensive overview of the design and development process for a mobile application called Activity Recorder. The application is designed to track user activities and store the data in a database. The report details the tools used, including Android Studio and Kotlin, and explains the database implementation using the Room library and SQLite. It covers the application's structure, including the use of MVC architecture, database schema, and the functionalities for creating, reading, updating, and deleting data. The report also includes screenshots of the development environment and application design, illustrating the user interface and data entry screens. It provides a clear understanding of the different components and their roles within the application, offering insights into the software development lifecycle. This assignment is contributed to Desklib, a platform that provides AI-based study tools for students.
tabler-icon-diamond-filled.svg

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
ACTIVITY RECORDER.
This report is about the working and designing stage of Mobile Application Activity
Recorder.
This application is used for tracking your daily activities like Reading, Playing, or any other user
defined activity. User of the application enters the activity name along with other details in the
application and mobile application store those fields in a database. This data can be further
accessed by user whenever he requires.
For designing of the application I have used following tools.
a. Android Studio
The standard Software Development Kit (IDE) for Android developers is Platform
Dependent.
b. Kotlin
Kotlin is a type-inferred, merge, procedural languages broad sense language of
programming. Although Kotlin is built to operate seamlessly with Java, as well as the
JVM version of Kotlin's standard library is based on the Java Class Libraries, category
inferences enables for more compact syntax.
c. Room library
The Room permanence library acts as an intermediate device over SQLite, allowing for
smooth database access while still utilising SQLite's full functionality. Room, in
particular, offers the following advantages:
SQL query verification at compile time.
Convenient annotation that reduce boilerplate code that's also repetitious and
error-prone.
Streamlined database migration paths.
d. SQLite
SQLite is a C-language library that implements a small, fast, self-contained, high-
reliability, full-featured, SQL database engine. SQLite is the most used database engine
in the world.
This Application has been divided into following 5 sections for easy understanding.
1. Create Database Schema
2. Inserting Data
3. Read data
4. Update Data
5. Delete data
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
As we are using Room Data base in our project, we have already discussed how beneficial is this
Room Library as compared to SQL. For further understanding of this ROOM Library, let us
discuss following few sections that we will use in our project.
It has three main components
1. @Entity
Within the database, it symbolizes a table. For every class, Room builds a table with the
annotations @ Entity.
The fields in the class corresponds to the columns in the table.
Title, data, start time, end time are few of columns of our database.
As entity classes are only data containers, so they do not contain any logic.
2. @Dao
Database Access Object is the abbreviation for Database Access Object. The DAOs are in
charge of establishing the database access mechanisms. Here is where we keep track of
our questions.
3. @Database
This component contains the database holder and serves as the main access point for the
underlying connection to application data.
Following is the view model interface
Document Page
MVC (Model-View-Controller) Separation of responsibilities is an architecture and
design technique that facilitates better application organisation. Database, View, and
Controller are the three components that make up an interactive program. It separates
business data (Databases) with user interface design (Views), with a third dimension
(Controllers) controlling logic, user input, and synchronizing both the designs and views.
MVC's purpose is to assist organize and split a database's responsibilities into three
components:
Model is in charge of the software's data management. From the keyboard, it accepts
input validation.
View appears to mean the model's demonstration in a specific format.
Controller reacts to the user's request and interacts with the database design objects the
taken measures the input, affirms it if necessary, and then sends it to the framework.
From the user point of view MVC works as described in following Figure.
In the next show some picture / screen shots that were taken at the time of development
of the Application.
In the following Screenshot, it can be seen that I have installed and downloaded kotlin
plugin for developing the App.
Document Page
When designing the application, first step is update the dependencies so that we can
easily build the app.
tabler-icon-diamond-filled.svg

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
Our Application should look something like given figure.
An add button for Adding Activity, A delete button for deleting already recorded activity.
And a main screen where some fields for the recorded activity will populate.
Next we created a new package data, and a new data class User
It will create a table for storing data in given manner.
User_table
Id FirstNmae LastName Location
Document Page
Following piece of code describes our table columns
While design a random screen shot,
Document Page
We have created two fragments.
Fragments Add
Fragment List
When Add button is pressed, Fragment Add Screen (as shown Above) would pop up for data
entry.
This is how this App works.
chevron_up_icon
1 out of 7
circle_padding
hide_on_mobile
zoom_out_icon
logo.png

Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

[object Object]