Mobile application design comp1786

Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: _0206girl

Detailed Specification

Please read the entire coursework specification before starting work.

This assignment consists of two parts:

  • Part A (implementation) will be completed individually
  • Part B (report) must be completed individually
  • M-Hike: Hiker Management App
  • Many people enjoy going for hikes in nature in their free time. A community of hikers has approached you to create a mobile app which would allow them to record details of hikes they are planning and record observations during the hike.
  • You are to create a mobile app for use by hikers that they can use to record details of their planned hiked and then upload them to a server where they can later be shared with others. The app is to be called M-Hike and will allow hikers to record planned hikes and observations during a hike and to carry Out searches. The features the app should Support are given below:
  • Features a) to e) are to be implemented as a native Android app coded in Java.
  • Features f) andg) are to be implemented as a hybrid app coded usingXamarin/MAUI.
  • Feature g) can be implemented as either or both additionsto thenative android app or hybrid app.
  • Your final app is the culmination of all your hard work on this course, which should become a strong addition to your programming portfolio. You should produce an app that is well-designed, robust and useful. The GUI design should be clean, simple to navigate, and operate smoothly without sluggishness or crashes. The app should not require instructions or a manual to use.

Part A -- Implementation (80%)

Description of the application

  1. Enter details of hikes (10%):
  2. Note that users must be able to enter all of the following fields. Required fields mean that the user must enter something in this field; otherwise they will be prompted with an error message. Optional fields mean that the user can enter something if they wish, but they will not get an error message if nothing is entered.
  3. The user should be able to enter:

The user must be able to enter multiple observations for a single hike.

The app should store all details entered on the device in an SQLite database.

It should be possible for a user to select a hike and display all observations and view/edit/delete a specific observation.

  • Name of hike (e.g. "Snowdon•, "Trosley Country park", etc.) --- Required field

  • Location - Required field

  • Date of the hike - Required field

  • Parking available (i.e. "Yes" or "NO") - Required field

  • Length the hike - Required field

  • Level of difficulty - Required field

  • Description --- Optional field

  • Two or more other fields of your own invention --- be creative The app will check the input and if the user doesn't enter anything in one of the required fields, the app should display an error message.

    Once the details have been accepted by the app (e.g., no required fields were missing), it should display the details back to the user for confirmation and allow them to go back and change any details that they wish.

    Note : The GUIs should use appropriate controls for data entered and minimize the amount of time that users have to enter data manually. More information about Android controls can be found here https://developer.android.com/develop/ui

  • Store, view and delete hike details or reset the database (15%)

All the details entered by the user should initially be stored on the device in an SQLite database.

The user should be able to list all the details of all hikes that have been entered into the app, edit or

delete individual hikes and delete all the details from the database.

  • Add observations to a hike (15%)

Hikers will be able to enter observations during a hike. Observations could include sightings of animals,

types of vegetation encountered during the hike, weather conditions, conditions of the trails, etc. They

should be able to select a hike and then add the following details:

  • Observation - Required field
  • Time of the observation - Required field (ideally this should default to the current date and time)
  • Additional comments - Optional field
相关推荐
古法老登瞎折腾3 小时前
大数据智能运维实战(十一):运维 MCP 的工程化——权限、限流、审计与错误处理
java·大数据·运维·spring ai·mcp
智能运维指南4 小时前
研制过程“两张皮“怎么破:研制一体化支撑平台的定位、能力边界与落地前提
java·前端·人工智能·嘉为蓝鲸
yz_aiks5 小时前
Spring AI 2.1 ChatMemory 已过时用什么替代:迁移到 Session Memory 实战(JDBC 存储与会话压缩)
java·spring boot·大模型·ai agent·spring ai
金銀銅鐵5 小时前
[Java] 用 GUI 展示 EnumMap 增删键值对时的内部变化
java·后端·ai编程
学长毕设5 小时前
基于SpringBoot的上门洗车服务系统设计与实现
java·spring boot·后端
jason成都5 小时前
RTKLIB-Java 多基线联合RTK:FIX率从0%到91.5%的三层根因修复
java·gnss·rtklib·rtklib_java
鱼宵5 小时前
Stream 终端操作一次讲透:collect、count、reduce 怎么选
java·stream·终端操作
白山编程大哥5 小时前
Java 后端如何优雅地把 List 集合返回给前端
java·前端·list
Linux运维技术栈6 小时前
CVE-2026-91403 高危漏洞修复:Rocky Linux 9 多版本 JDK 环境清理实操
java·linux·运维
On The Road :6 小时前
Java 多线程详解:从入门到线程安全
java·python·安全