Challenge Overview
INTRODUCTION
This is the third in a series of challenges to develop the Android build of the Jim Bowie and Sam Houston challenges. This challenge will focus on building the UI for the session listing, session detail and speaker screens.
REQUIREMENTS
You'll be referencing the screens from the current build of the iOS version of the app located in the design repository here to build out the views defined below. The PSD design in the branch you'll be working with is to only be used for generating necessary UI elements, not as the design guide. Use the REST services singleton and listeners for retrieving data when necessary. Be sure to review the README in the repository for other relevant information.
Local Info Listing - Restaurants, Things to Do, Events (Houston… PSD groups)
-- Call the consolidated data call on load and when user refreshes and cache locally (detail below)
-- Data for display is contained in the LocalInfo object
-- Implement filtering functionality
-- Selecting “Map View” will display the map screen (below)
-- Reviews data DOES NOT need to be implemented
On the “Things to Do” tab
-- Remove and DO NOT implement: star to favorite, ratings and reviews, photo links, “Sort by Rating” text, all sort functionality including from the bottom menu
-- Remove the dedicated detailed page for the “Things to do” specific item and instead just display Phone Number (initiates phone call) & Map (initiates showing location in map) next to detailed item name
-- Replace the star ratings with website links - business URL & reviews URL
-- Replace categories with the description
-- Add a phone icon to call the business
On the “Restaurants” tab
-- Remove and DO NOT implement: star to favorite, ratings and reviews, “Sort by Rating” text, all sort functionality including from the bottom menu
-- Replace the star ratings with website links - business URL & reviews URL
-- Replace categories with the cuisine type
-- Include the description below the cusine type
-- Remove the distance from the filter
-- Replace “Category” with the cusine type
On the "Events" tab
-- Remove $$/price
Local Info Detail (RestaurantDetail PSD group)
-- Details for all local info objects should follow the same design pattern as laid out in the restaurant detail
-- “Show Map” should load the map screen (below)
-- “Make a Call” should dial the number associated with the location (if available)
-- REMOVE reviews, star to favorite, $$, hours of operation and categories, “Sort By” from the bottom menu
-- ADD cusine type, business URL, reviews URL
Map (Houston-Map PSD group)
-- Display the selected location as a blue pin on the map
-- Display all surrounding locations as green pins on the map
-- Selecting a pin will show the detail overlay
-- Selecting the detail overlay will load the Local Info Detail screen (above)
-- Selecting “List View” will display the Local Info Listing screen (above)
-- Display the user’s current location on the map
-- Implement filtering
-- Ensure the address and distance are displayed in the detail overlay
FAQ
-- Items where Type__c = “FAQ”
-- Display the question (FAQ_Question__c) and the answer (FAQ_Answer__c)
-- Email to use for “Contact Us” is briefing_center@bmc.com
All Views (where applicable)
-- Stub out functionality for opening the menu (top left icon) and alerts (top right icon)
-- Replace any stock (watermarked) skyline photos with images located in the design repository here
-- Defensive programming on data handling of JSON objects from REST services (e.g. null checks, etc.)
Data (where applicable)
-- Cache copies of the API JSON responses locally for offline access
-- Update the cached copies when the app is launched
-- Use these cached copies for displaying data in the UI
SETUP
-- Send an email to harrywynn or lazybaer and request to be added to the Project Alamo team on gitlab.com if you are not already a member
-- Once added to the team, fork the repository if you haven’t already and work off of the WillTravis3 branch
-- Add harrywynn and lazybaer as members of your forked repository
-- Designs are in the design repository, added as a submodule to the branch you'll be working with. View the repository's README for instructions on pulling them
-- iOS reference screens are located in the design repository here
Final Submission Guidelines
-- Android source project developed with Android Studio 1.0.1
-- Code must compile with the minimum API level of 16, targeting API level 21
-- Only portrait orientation needs to be supported
-- Upload your source project as a zip
-- Include your gitlab.com username and URL of your forked repository in your documentation
-- Provide a video overview of your submission