Coder Social home page Coder Social logo

nikhilraju / loctracker Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 1.91 MB

An iOS app that uses the Google Map Framework and allows the user to search for locations. The results are displayed as pins on a map. The user can click on any location to view more details about it. The user can also tap on any entry in the results table to add it to Favorites or remove it from Favorites

Objective-C 100.00%

loctracker's Introduction

nr2483

============================================================================================
					Quick Info
============================================================================================


My App does the following:

Phase 1 (implemented as part of Homework 1)

Functionality/Features:

	1) Simple and clean UI
	2) Displays Query results on the map as pins 
	3) Displays details such as rating if available as subtitles for the pins
	4) Displays appropriate error messages 
	5) Easy to use customized UISlider element to provide search results within a particular radius. 
This has been added on the results page itself where the map is displayed so that the user can adjust radius and see results on the same screen rather than switching between screens

Phase 2 (implemented as part of Homework 3)

	1) Tab Bar Controller enables easy navigation back and forth between Search Screen,Results screen and Favorites screen
	2) The user is provided names of locations matching the query in tabular form along with an “Add to Favorites” button (conventional star icon) which can be used to add or remove locations from the favorites tab
	3) The user can click on any of the results. When the user selects a result,the app extracts from the results dictionary important details such as price level,rating,vicinity, related images for the searched location and displays it to the user in another view
	4) The app uses core data to save details of favorites and displays the saved information in the Favorites tab. The user can use the swipe to delete gesture in iOS to remove a particular entry from the Favorites list.


============================================================================================
					File Highlights (most of the code is here)
============================================================================================

ListViewController.m
This contains the code to save context to Core Data Model,


FavoritesTableViewController.m
This contains the code for the fetch request to extract the save data and populate table.


============================================================================================
					Known Bugs
============================================================================================
While I have fixed some bugs during testing, there are currently no bugs that I am aware of. 
I am currently working on additional features such as making the cells in Favorites Tab clickable to 
display details from there. But I wasn’t able to implement these by the deadline.
Currently the app just displays names of the locations marked as Favorites

============================================================================================
	     				Lessons Learned
============================================================================================
1) Even when the query framework was provided to us,a lot of thought needs to go into  app development and design. It is a very open ended problem and there is always scope for improvement.

2) Not to panic when you see that your app is crashing all of a sudden even though the code was working fine a minute ago! After spending hours on stack overflow I learnt that SIGABRT exceptions are not something to be afraid of and can be caused by something as simple as a reference on the storyboard to a method which has been deleted. I picked up some useful debugging skills 

3) iOS development is fun but not as easy as it looks on the outside, there are several subtleties to be picked up which will take some time, but this homework definitely has given me a good start in this direction.

============================================================================================
					References
============================================================================================

This project involved searching extensively on the internet to understand the design of apps using Core Data and Tab bar controllers
 
http://www.appcoda.com/introduction-to-core-data/
http://www.appcoda.com/core-data-tutorial-update-delete/


Deleting a specific entry:
http://stackoverflow.com/questions/6524876/removing-a-specific-entry-row-from-core-data

SetPredicate- for Unique id in database
Pass id atIndexPath

I have discussed the implementation details for Core Data with Shrutika Dasgupta and Yash Parikh. (students taking this course)

loctracker's People

Contributors

nikhilraju avatar

Stargazers

JMV avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.