Starting from:

$30

Mobile Application Development Homework 9


CptS 479 Mobile Application Development
Homework 9

General Instructions: Put the entire app directory into one zip file and submit as an attachment
under Content à Homework 9 for this course on the Blackboard Learn system by the above
deadline. Note that you may submit multiple times, but only the most recent entry submitted before
the above deadline will be graded.
For this homework you will write a standalone app, still called QuizApp, but allowing the user to
generate questions and answers pertaining to nearby locations of interest. See screenshots below.
Specifically,
1. Add a Table View Controller embedded in a Navigation Controller to the app. The table
view should have prompt “Quiz App” and title “Queries”. Add some queries to the table;
at least the four shown in the screenshots, but you are welcome to add more.
2. Add a Question View Controller to display the question, a button to get the answer, and a
Map View. The prompt should be “Quiz App” and the title should be “Question”. When
the user taps on a row in the table, the app should segue to the Question view and show the
question “Where is the closest place for X?”, where X is the query selected from the table.
3. The Map View should show the user’s current location. When the user taps the “Get
Answer” button, the app should send the natural language query, and then the map should
show the nearby places returned on the map. If no places are returned (e.g., for the “Stewed
Gagh” query), then the app should show the error alert.
4. Inside the Question View Controller, you will need to check for authorization to use
location services and start updating location if authorized. If not available, or the user has
disabled them, then the error alert should be displayed when you load the Question View
and/or tap the “Get Answer” button. Be sure to add the “Privacy - Location When In Use
Usage Description” to the Info property list.
5. Be sure that auto layout constraints are set so that the view elements are appropriately
displayed with no overlap regardless of device orientation.
2
StoryBoard:
Simulator:
After tapping any row
for the first time.
After tapping “Get
Answer” and
zooming out a bit.
Initial view
3
User disables location
services for app.
Error for any query
when location
services disabled.
Error if no results
returned.

More products