• Tidak ada hasil yang ditemukan

This Report Presented in Partial Fulfillment of the Requirements for the Degree of Bachelor of Science in Computer Science and Engineering

N/A
N/A
Protected

Academic year: 2023

Membagikan "This Report Presented in Partial Fulfillment of the Requirements for the Degree of Bachelor of Science in Computer Science and Engineering"

Copied!
44
0
0

Teks penuh

Sadik Hasan Khan, ID No. of the Department of Computer Science and Engineering, Daffodil International University has been accepted as satisfactory in partial fulfillment of the requirements for the degree of B.Sc. Department of Computer Science and Engineering Faculty of Natural Sciences and Information Technology Påskelilje International University. We hereby declare that this project has been carried out by us under the supervision of Nazmun Nessa Moon, Associate Professor, Department of CSE Daffodil International University.

We also declare that neither this project nor any part of this project has been submitted elsewhere for the award of any degree or diploma. I am truly thankful and grateful to Nazmun Nessa Moon, Associate Professor, Department of CSE, Daffodil International University, Dhaka. Syed Akhter Hossain, Professor and Head, Department of CSE, for his kind help in completing my project and also to other faculty members and the staff of CSE Department of Daffodil International University.

I would like to thank all our course fellow at Daffodil International University who participated in this discussion during the completion of the course work. As the name suggests, 10k steps a day - a step counter app for Android is a health-focused step counting android app. The importance of the project lies in its ability to encourage people to take some time out of their busy schedule every day so that they can lead a healthy, disease-free life.

The way things are progressing, the health condition of the people in a fast area especially, Dhaka is becoming very challenging to maintain properly.

Objectives

Expected Outcome

Report Layout

Introduction

Background

Design Specification

Implementation and Testing

Conclusion and Future Scope

BACKGROUND

  • Related Work
  • Example
  • Comparative Analysis
  • Scope of the problem
  • Challenges

However, if you were to ask to walk us through the interface, chances are you wouldn't be able to do so right away. Right from the start, you can immediately see what's going on in the interface after you open the app for the very first time. I have carefully placed other menus in the top right corner of the app for easy access so that the user can control most aspects of the app.

Users can start hiking right after opening the app without worrying about time-consuming settings changes. I understand how valuable a user's personal information is, so I built it to work 100% without any internet connection with full features. There were many challenges along the way, which I was able to tackle thanks to the developer's community on stackoverflow [5] and many other sites.

However, building an app that requires hardware pedometer from the ground up was a struggle and almost seemed like reinventing the wheel. I used various open source resources to facilitate different requirements including color wheel animation [7], color picker [8] and sensor implementation.

Figure 2.1: Screenshot of Pedometer - Step Counter App
Figure 2.1: Screenshot of Pedometer - Step Counter App

DESIGN SPECIFICATION

UI (user interface) Design

PieChart displays the real-time step count with a smooth animation that shows you how close you are to your goal. In the LinearLayouts you will see the average and total step count taken so far. And in the BarChart you will be able to see your daily step count with days of the week.

Figure 3.1: User interface design of the
Figure 3.1: User interface design of the

Menu Design

The next preference is to set your step size, as everyone has different step sizes. Now if you want to backup all the data in your device for later use, you can do so by tapping on the Export/Backup preference. Next in the drop-down menu is the "Split count" option which, when launched, shows the steps and distance traveled since the feature was activated.

At the bottom there are two simple buttons: stop and close, which stop the Split Counting function and close the Split Counting window, respectively. Next in the menu is the 'About' option, which shows the creator and version of the app.

Figure 3.2: Menu design of the app
Figure 3.2: Menu design of the app

Implementation Requirements

IMPLEMENTATION

  • Implementation of the UI
  • Implementation of Settings menu
    • Implementation of the Split Count function
  • StepSensor Manipulation
    • Implementing the Database

The code in Figure 4.7 updates the bar chart to show steps/distance over the past week. To implement the settings menu, a Fragment_settings class is created, the subclass of PreferenceFragment that also implements the OnPreferenceClickListener interface. Under the onCreate() method, all options in the settings are implemented by setting a Figure 4.7: updateBars() method.

Split Count is a standalone feature used to show the steps taken or distance traveled in a specific time frame. If one starts the split count function, it will continue to record the data from the moment it is started and display the information in a text display panel when called up. This is because the hardware pedometer used to count the steps is always running in the background.

For this, the abstract class Dialog_Split is created, in which the getDialog() method is created, which displays the steps, the distance traveled and the date. To manipulate the StepSensor and keep the step sensor listener alive in the background to always get the step count since startup, the StepListener class is implemented, which is a subclass of a service that also implements the SensorEventListener interface. In this class, the onSensorChanged() method is implemented to get the number of steps given by event.value[0]; even though it is a float, the fraction is always zero.

Then the getNotification(), updateIfNecessary() and showNotification() methods are implemented to display and handle the notification update. To keep it running and responding to events, the step sensor event must also be emitted and the step sensor must be registered. To store the data, a SQLite database is created and designed in a way that it can be manipulated using simple queries.

The insertNewDay() method, shown in Figure 4.17, inserts a new entry into the database if there is no entry for the given date. Steps must be the current number of steps, and its negative value will be used as the offset for the new date. The insertDayFromBackup() method, shown in Figure 4.18, inserts a new entry into the database and overwrites all existing entries for the given date.

The getSteps() method shown in Figure 4.19 retrieves the number of steps taken for a specific date. The next two methods shown in Figure 4.20 saveCurrentSteps() and getCurrentSteps() save the current value of the 'steps since launch' sensor to the database and read the most recently saved value for the 'steps since launch' sensor value .

Figure 4.2: onCreateView method
Figure 4.2: onCreateView method

CONCLUSION AND FUTURE SCOPE

Discussion and Conclusion

Scope for Further Developments

PLAGIARISM Plagiarism Report

Gambar

Figure 2.1: Screenshot of Pedometer - Step Counter App
Figure 3.1: User interface design of the
Figure 3.2: Final UI design
Figure 3.2: Menu design of the app
+7

Referensi

Dokumen terkait

Then the product effectiveness test results using the independent t-test showed that interactive multimedia based on problem-based learning proved to be able to improve critical