Restaurant app is an android app. For example: If a user wants to organize a party, the user, generally opens the Yelp App and checks all the places that are favourable for him/her to plan for lunch, dinner or Breakfast. With the "Restaurant" app, the user gets the list of the nearby restaurants,instead of the overall list, based on the current location. This app uses the Yelp API to retrieve information on the Ratings and Location, the Name of the Place and the type of Food i.e, if the Food is Mexican, or a Pizza place, or Fast Food or Wine Bars, or if Korean food is being served at the Restaurant. This android app uses device's location information to fetch nearby restaurants via Yelp API and get map information of restaurants.
Submitted by : Swati Singh
App Flow - User Sign up / Login in the App as a Person, this second registered on Yelp as required User 1: Any Person that would use the app to contact or get a service from any a business registered on Yelp. This user will use the email as “User Name” and define a password to Sign up on our App.Then, They can Log in on the app with the same information registered
Flow for the User 1: Once the user 1 was registered on our app the app will show the list of Restaurants based on the current location. User can communicate with Yelp via Yelp API and get nearby restaurants User can tap a restaurant in the list and bring up an new screen to show it on map.
The following required functionality is completed:
- User can sign in to the app using OAuth login, via Email.
- User can **view thge list of places from their based on the search criteria.
- User is displayed the username, name, and body for each recent activity.
- User can view more media as they scroll with infinite pagination. Number of images is unlimited.
- User can click a “Show All” icon to search for the places, and populate the results in the Google Map View.
- Request location information from device
- Enable Swipe Refresh Layout, with List View.
The following optional features are implemented:
- User can **click a select the Place within the app ** and will be redirected to the Map view, with its location.
- User can pull down to refresh media timeline
- Persisted in SQLite tweets are refreshed on every application launch. While "live data" is displayed when app can get it from, it is also saved for use in offline mode.
- User can tap a media to open a detailed media view in browser
- User can Login using Parse.
- Improve style of the restaurants in the list [using a custom adapter]
- Use fragment instead of new Activity to show list of restaurants
- Implement Google Map functionalities
- Get location information from device.
- Analysis of response data from Yelp
- Enable Swipe Refresh Layout,with Grid View.
The following bonus features are implemented:
- Add support to show all restaurants in the same map
- User can see embedded image media within the media fragment list view
- Add support to show all restaurants in the same map
- User can watch embedded video within the media detail view
- Use Parcelable instead of Serializable using the popular Parceler library.
- Leverage RecyclerView as a replacement for the ListView and ArrayAdapter for all lists of tweets.
- Replace all icon drawables and other static image assets with vector drawables where appropriate.
- Leverages the data binding support module to bind data into layout templates.
- Enable your app to receive implicit intents from other apps. When a link is shared from a web browser, it should pre-fill the text and title of the web page when composing a tweet.
- Apply the popular Butterknife annotation library to reduce view boilerplate.
The following additional features are implemented:
- List anything else that you can get done to improve the app functionality!
Here's a walkthrough of implemented user stories:
<img src='https://github.com/swatisingh0960/RestaurantApp/blob/master/ezgif.com-9fbb2dd2ff.gif'[Video Walkthrough} />
GIF created with LiceCap.
Describe any challenges encountered while building the app.
Team Size = 1 This is a Solo Project, developed within the last few days of Submitting the Final Project
- Android Async HTTP - Simple asynchronous HTTP requests with JSON parsing
- Picasso - Image loading and caching library for Android
Copyright [2016] [Swati Singh]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.