Assignment 2 — Android Mobile application
Due date: 11:00pm AEST, Friday Week 10 ASSESSMENT
Length: Less than 50 MB 2
This assessment item relates to the learning outcome 1, 2 and 3. More specifically, to design and implement a complex mobile application.
The objective of this assignment is for students to:
• Develop, test and maintain a mobile application using an integrated suite of mobile software development tools. More specifically Android Java development is undertaken using Android Studio.
logger to capture package location data in a mobile application that stores the data in a local database. The app has fields to record data five days of use of drone aircraft. When a day is selected, a page is shown to record data values for drones that are recorded by the app. A drone entry consists of a date and log data. When the Save Log Entry button is pressed this data is saved locally in the application in a SQLDatabase. When the Show Log Entries button is pressed a related page (fragment) is shown that list all the date/time and drone entries. We will refer to our app as droneLogs.
More details of these pages will be given in the sections below. You should also consult the weekly lecture/tutorials on the Moodle website for help and more information on completing the assignment. The tutorials contain step-by-step procedures for working through the assignment as well as some tips and extra help. So please read the lecture/tutorials on the Moodle website.
Mobile Application Home Startup Page
The application start-up page is unchanged from assignment 1.
Drone view Data Entry Pages
The company has decided that it needs to collect the latitude and longitude of the drones’s position when drone data is entered. This means you will have to determine the location and add this data (latitude, longitude) to the database. The decision is made that when a user presses the Save Log Entry button on the droneLogs page the latitude and longitude should be added to the droneLogs class, and that the database handler will have to also save this to the database. This means that a new SQLLiteDatabse needs to be created.
Show Log Entries Pages
These pages are unchanged from assignment 1 other than showing the latitude and longitude as well as time, see figure 1.
Fig. 1: Drone data entry page (fragment)
Options Menu pages
The Options Menu options is unchanged from assignment 1 except for the Send all entries option.
The Send all entries will be used for sending the drone database to the employer and to clear the current database of any entries. If the OK button is pressed the AsyncTask class is used to send the email asynchronously in a AsyncTask class.
An email message is composed containing each drone' log entries during the async event using an Intent object and the built-in Mail app. The username given in the profile fragment is to be contained on the first line of the email. Each Drone logger entry is put on its own line in the email, see Fig. 2. When the email is sent the app returns to the list screen as shown on the right of Fig. 2.
Fig. 2: email programmatically entered using Intent
When the email is sent all the Drone logger database entries are deleted as is the local store on the phone for the app. To test this feature send the email to yourself. Include a copy of any such emails in the documents you submit for the assignment.
The Profile fragment is unchanged from assignment 1.
These are unchanged from assignment 1.
You are also to prepare a Word document. Your document should include an appropriate title page. Your document should have sections that address plan for testing the mobile application, sending your app data and the financial case and application commentary.
Plan for a Testing Strategy for your App
Your document should:
• Create and review a list of mobile devices, and versions of Android targeted by the app.
• Discuss whether testing is required on actual devices and what part emulators/simulators can play in this process
• Document functional and UI testing of the app.
Sending your App data
In the assignment the drone data is sent contained in an email. Discuss how you would use SMS messaging to achieve the same thing.
Give advantages/disadvantages for both approaches.
Financial Case & Application Commentary
Your document should:
• List the features you successfully implemented and those you were unable to successfully implement; you should describe the problem in a few sentences and also briefly describe anything you attempted to do to get it to work. Your approach to identifying and attempting to fix these bugs may gain you some partial credit for those features you were unable to implement.
• A description of any additional functionality you believe would be useful to add to this Website should be included. Explain what the features are and how they would help to improve the Website.
• Are there any ethical considerations in making this kind of service available?
• Discuss the economic/financial case for an extension of the proposed system that would allow you to customise the record keeping features of the app. Identify potential revenue streams and costs. How much would these costs be for your proposed user base? How would you show that you are achieving this user base? Given how long it has taken you to develop what do you estimate technical development costs to be in hours? How would you promote your app and what kind of marketing should be employed? .
You are required to submit your assignment electronically via the Moodle course website. The deliverable is zipped (or .rar) directory containing all the code and resources needed for testing. You must zip together:
• All source and resource/asset files. Required to re-create your project using Android Studio.
• Your Word document
• Copies of emails from your app
The resulting zip file should be submitted on the course website. Please note that you should use your student number as the name for your .rar or .zip file when uploading to Moodle.
Lecturer’s Signature Date: