iOS App Progress (Milestone 2)
Posted by jpmyers97 in Mobile App Development on September 30, 2019
Invision Prototype: https://invis.io/NQU5SKN456G
Building off of my original concept, I started working on a digital mock-up for the Fortune Cookie app. The visual design of my app is fairly simple and tries to maximize usability by limiting the amount of controls the user is exposed to initially. Essentially, users tap the fortune cookie to read and display a random fortune from a file containing all the fortunes. The types of fortunes used can be set in the preferences menu, which lists various categories and switches to enable/disable them–by default all are set to “On” when the app launches.
The other two buttons below the cookie are the “share” and information buttons. Information gives a quick overview of the app and how to use it for first time users and the share icon sends a screenshot of the fortune to someone via text message. I need to research more on how to implement a sharing feature like this; ideally the share button will bring up a list of the user’s contacts to send a picture (of just the fortune’s slip of paper) to a person of their choosing.
Additional features include audio, visual, and tactile feedback whenever the user interacts with the interface. So a crunch/crumple sound plays when the cookie is tapped, and a subtle ding/tap sound plays whenever a menu icon is tapped. Of course, the subviews for each menu will also require a back button to return to the main view.
High-Priority Features:
- Random fortune generation (~100 total to choose from)
- Feedback in the form of audio and vibration when cookie is tapped
- Ability to set preferences for fortune types
Mid-Priority Features:
- Lucky number generator
- Sharing capabilities
- Help/information screen
Low-Priority Features:
- Animation
- Other options (Enable/Disable sound and vibration)
Pseudocode:
- Update Fortune
- On user input (taps fortune cookie), play feedback
- Retrieves new fortune from data structure of strings based on type preferences
- Assigns fortune.text to new fortune
- Generate random lucky number and update its label
- View Information
- Clicking the information icon brings up the information subview
- Tapping the icon again or tapping “Back” will dismiss this view
- Change preferences
- On user input (taps preferences icon), play feedback
- Loads preferences subview showing all the options
- Tapping a switch enables/disables that fortune type by adding or removing that from the list of available fortunes
- A disabled fortune type will not be included in the update fortune algorithm
- Share fortune
- On user input (taps share icon), play feedback
- Saves current fortune by generating an image (of the fortune paper) with the appropriate text on it
- This image can be sent to any number of people from the user’s contacts