Because the ios sdk is relatively low-level, developers have to do more physical work. Fortunately, there are many third-party class libraries that can be used to simplify a lot of unnecessary work. after careful discussion by the author team, they selected 10 class libraries that can greatly improve iOS development efficiency. According to the comments of the original author, these 10 tools are basically available, the same is true for iOS development as for bubble cocoa.
Mbprogresshud-- Progress indicator Library
Apple's applications generally use an elegant, translucent progress display, but this API is not public, so if you use it, it is likely to be removed from the appstore. Mbprogresshud provides an alternative solution. From the user perspective, the implementation effect cannot be seen as different from the official program. Other additional functions are provided, such as virtual progress indicators and completion prompts. It is also easy to integrate into the project. I will not discuss it here.
Asihttprequest-- HTTP network library
Of course, the iPhone also has its own HTTP Network API. Why should I use asihttprequest? Because the official API is just a bit cool! The asihttprequest Library greatly simplifies network communication, provides more advanced tools, File Upload tools, redirection processing tools, verification tools, and so on. As long as you have something to do with HTTP, using this will definitely make you feel a wonderful life! Let's take a look at a piece of code.
(Void) loadappdevmag
{
Nsurl * url = [nsurl urlwithstring: @ "http://www.appdevmag.com"];
Asihttprequest * request = [asihttprequest requestwithurl: url];
[Request setdelegate: Self];
[Request startasynchronous];
}
-(Void) requestfinished :( asihttprequest *) Request
{
// Use when fetching text data
Nsstring * responsestring = [Request responsestring];
}
JSON framework-- JSON support
If your application interacts with the website server, JSON is used. But in fact, the native class library of iOS platform does not support JSON at all, which is a little sharp? However, the JSON frame meets all your requirements, including a parser that parses JSON strings into objects, and a generator that generates strings from objects. This library is too popular. JSON has been mentioned many times, so I will not talk about it in terms of its specific characteristics. The so-called "a piece of code wins thousands of words" is a demonstration of it with a piece of code.
// JSON string-> nsdictionary
Nsstring * jsonstring = @ "{\" foo \ ": \" bar \"}";
Nsdictionary * dictionary = [jsonstring jsonvalue];
Nslog (@ "dictionary value for \" foo \ "is \" % @ \ "", [dictionary objectforkey: @ "foo"]);
// Nsdictionary-> JSON string
Nsstring * newjsonstring = [dictionary jsonrepresentation];
Flurry-- Detailed usage statistics
Furry allows you to obtain statistics about the number of users, user activity, and user sources of the application. But what's best about it is that you can track the events and error records of the application. All the data will be displayed on a Google Analytics-like interface, in this way, you can easily master user behaviors and problems. Of course, there are a lot of statistical tools on this planet, but this is a solution that I personally admire.
Regexkitlite-- Regular Expression support
We all know the regular expression. But when the iPhone SDK does not exist? How can this be tolerated! Use regexkitlite. Although it is called lite, the function is full. Sample Code.
// Finds phone number in format Nnn-NNNN
Nsstring * RegEx = @ "[0-9] {3}-[0-9] {3}-[0-9] {4 }";
For (nsstring * match in [textview. Text componentsmatchedbyregex: RegEx]) {
Nslog (@ "phone number is % @", match );
}
Facebook IOS SDK-- Facebook API class library
Facebook login on the iPhone, which fully supports the Facebook Graph API and the older rest API. If your application is related to Facebook, believe me, use this.
Sdwebimage-- Simplified network image processing
Using sdwebimage to call images on a website is as simple as calling images built in the app package locally. The operation is also very simple.
[Imageview setimagewithurl: [nsurl urlwithstring: @ "http: // examp
Similar functions are available in three20. Let's talk about them later. In comparison, sdwebimage mainly provides a small, precise, simple and convenient solution.
Gdata Client-- Class libraries for all Google-related services on the iPhone
The name indicates everything. It is worth mentioning that this project is very open for Google. There are many sample programs for download.
Coreplot-- 2D graphics Plotter
Coreplot has many solutions to visualize your data ., At the same time, it will also provide a variety of fascinating graphic effects, such as Rod charts, pie charts, and line charts. on their websites, it also provides a large number of sample images, many stock price applications, game scores, personal Financial management is in use.
Three20-- General IOS Library
The three20 class library is made by Facebook itself, and is big and all his biggest characteristic. It may take a long time to integrate three20 into an existing project. However, if three20 is used at the beginning, especially when many web-related projects are involved, you will be able to deeply understand what a magic horse is.