What are the most useful open source libraries you have used in your iPhone Objective-C development? Any libraries that help you be more productive and can be a great asset for writing a new app.
ASIHTTPRequest
library. It's great for all HTTP/HTTPS requests and provides much better abstraction than the built-in SDK classes (e.g. handles time-outs, non-blocking, authentication, connects to progress views, etc).
Facebook's Three20 UI library. It provides a set of nice UI elements and abstractions that were used in building the Facebook application.
The main two features I love about it are:
Internet-aware table view controllers
TTTableViewController
andTTTableViewDataSource
help you to build tables which load their content from the Internet. Rather than just assuming you have all the data ready to go, likeUITableView
does by default,TTTableViewController
lets you communicate when your data is loading, and when there is an error or nothing to display. It also helps you to add a "More" button to load the next page of data, and optionally supports reloading the data by shaking the device.URL-based Navigation
TTNavigationCenter
is for those grizzled old web developers like myself who want to organize their app by "pages" which can be displayed by visiting a URL.Your view controllers can simply register URL patterns that they handle, and when those URLs are visited the controllers will be created and displayed. You can also register generic actions that are called when a URL is visited.
TTNavigationCenter
also persists and restores the full path of navigation controllers and modal view controllers, so your users can quite the app and come back exactly where they left off.
FMDatabase, to access SQLite database more nicely than using the SQLite's raw C API.
to draw diagrams with the iPhone you can use those 2 ones :
CorePlot
http://code.google.com/p/core-plot/
And s7graphView
Many similar questions have been asked here, including:
- "What open source Cocoa/Cocoa Touch Frameworks are out there?"
- "Are there any Open-source iPhone applications around?"
- "Is there any iPhone open source community?"
- "Open source iPhone components? Reusable views, controllers, buttons, table cells, etc?"
- "Open source iPhone Coverflow like library"
- "Open Source Cocoa/Cocoa-Touch POP3/SMTP library?"
- "Cocoa Graphing/Plotting Framework that Works on iPhoneOS"
In our shipping iPhone app, flook, we make use of these, all of which we recommend highly.
GHUnit for testing