联系方式

  • QQ:99515681
  • 邮箱:99515681@qq.com
  • 工作时间:8:00-21:00
  • 微信:codinghelp

您当前位置:首页 >> Database作业Database作业

日期:2024-03-14 09:59

CSCI 4176/5708 – Mobile Computing

Midterm-1

You are tasked with developing an expense/income logging application that prioritizes the

application of concepts covered in class and lab sessions, rather than focusing on the app's

visual aesthetics. The app should consist of three activities and utilize shared preferences, as

well as Room/SQLite for data storage. Additionally, the use of a RecyclerView and UI fragments

is required.

Activity 1: Login and Sign Up

Activity One comprises two fragments: the login and sign-up fragments. Upon opening the app,

the login fragment is initially displayed. The Login Fragment includes at least four elements: two

input fields (one for the username and the other for the password), a login button for validating

details and navigating to Activity Two, and a sign-up button to transition to the Sign-Up

Fragment.

The Sign-Up Fragment consists of a minimum of four elements: three input fields (for profile

name, username, and password) and a create button for validating and saving user details.

Data storage and retrieval are accomplished using shared preferences.

Activity 2: Expense Overview

Activity 2 contains a minimum of three elements at the top and a RecyclerView. The three

elements consist of two buttons: one for logging out the user and returning to Activity 1, and the

other for adding expenses/income, which opens Activity Three. The third element is a text field

displaying the profile name of the logged-in user.

The RecyclerView within Activity 2 contains elements representing expenses/income. Each

element in the RecyclerView includes the name of the expense/income, the corresponding

amount (using '+' or '-' to indicate income or expense), and an edit button that navigates to

Activity Three. Data related to expenses is stored in Room/SQLite for efficient management and

retrieval.

Activity 3: Expense/Input Details

Activity 3 is designed with two distinct modes that share a consistent visual layout but differ in

behavior. When the user clicks the add button in Activity 2, Activity 3 opens with all fields empty.

Alternatively, when the user clicks the edit button on elements within the RecyclerView in

Activity 2, Activity 3 opens with the date pre-filled of the expense/income in the input field,

allowing for editing.

Activity 3 includes a minimum of six elements: three text input fields for the name of the

expense/income, amount, and description; a fourth input field for specifying whether it's an

expense or income that can be a radio button or toggle; and two buttons—one for saving

changes and the other for deletion.

Two buttons save and delete. The save button not only stores the information but also navigates

back to Activity 2. Similarly, the delete button removes the selected entry and returns to Activity

2. In the scenario where the user initiated the process to add but decided to delete, the app

seamlessly returns to Activity 2 to streamline the user experience. Data management is handled

through Room/SQLite, ensuring consistency with the data source used in Activity 2.

Key Notes:

To meet the requirements, use Fragments in Activity 1, implement a RecyclerView in Activity 2,

and store user details with shared preferences. Manage expense/income data through CRUD

operations using Room or SQLite.

Ensure each screen meets minimum element requirements, allowing for additional elements.

Implement validations and user feedback, like toasts, for actions such as incorrect username or

password entries.

Submission Guidelines:

Report:

1. Code Snippets:

● Include code snippets that highlight key parts of the question.

● For example, demonstrate how Room/SQLite is implemented in your code.

2. Screenshots:

● Provide screenshots of the running application.

● Clearly label and organize the screenshots to correspond to specific functionalities or

questions.

3. Data Flow Documentation:

● Document how data moves within your application and its impact.

● Use diagrams or flowcharts to illustrate the flow of data.

4. Interpretations and Assumptions:

● Clearly state your interpretations and assumptions regarding the questions.

● If any assumptions were made during the implementation, document them explicitly.

5. Citations:

● Provide proper citations for any external libraries, frameworks, or resources used.

● Mention the source or reference where specific solutions or ideas were adopted.

Source code (as zip):

6. Naming Conventions and Organization:

● Use a consistent and clear naming convention for files and folders.

● Markers should easily distinguish and match files to their respective parts.

7. Comments on Code Snippets:

● Add comments at the function level to explain the purpose and functionality of important

code snippets. Clearly articulate the logic and intentions behind the code.

** Submit both a report and source code as zip file.


版权所有:编程辅导网 2021 All Rights Reserved 联系方式:QQ:99515681 微信:codinghelp 电子信箱:99515681@qq.com
免责声明:本站部分内容从网络整理而来,只供参考!如有版权问题可联系本站删除。 站长地图

python代写
微信客服:codinghelp