This article reprinted to http://www.cocoachina.com/ios/20130402/5926.html
If you want to enter the mobile app development area, you can always find a variety of methods and tools from other developers or online or book, for beginners, have not yet found the way to be lost. Here are 20 recommended tools to help you streamline your app development process. Many developers have used these tools, including prototyping and design, programming, testing, and final marketing, which basically covers the entire development process.
Prototyping and Design
With a good idea, what you do is not programming immediately, but designing the UI and creating prototypes so that you know how the app works and what adjustments you need to make based on the user experience.
APP Cooker
Appcooker ($39.99) is not only a great tool to create prototypes, it provides many features that can also help you publish your programs to the App Store. It integrates dropbox,box.net and photo roll, and you can import icons and other UI resources directly into the prototype design tool. You can use features such as gradients and fills to create simple shapes, and you can access almost any UI control that Apple provides by default.
If you are not ready to delve into graphic design, you can use app cooker to put your picture resources together reasonably to create a rough, unified prototype. Appcooker also has an easy-to-use dynamic link feature that allows you to connect various images (various connection methods in the UX design phase).
Pop
Pop is one such application. With it, it takes only five tools to make a prototype: Pop, IPhone, paper, pen, and Eraser. Make it easy to make app prototypes that you can demonstrate on your iphone.
Drawing: Draw the complete frame diagram on the paper, the most regular several pages, the button, the main process runs to pass just fine.
Take photos: Use Pop to capture these sketches, and the app will automatically adjust brightness and contrast to make it visible and stored inside the pop app,
Edit: Place the captured photos in the order you want them to be, use the links to trace the logical relationship between the plates, and click Play to demonstrate the entire application.
Make app icon
Make app icon is a web tool that can help you quickly generate app icons. The Make app icon can help you generate the various resolution icons that Apple's guidelines say, including retina devices and non-retina devices. In addition, you can make multiple icons on the Android platform.
Although it seems to be a very simple tool, but can help you to save a lot of time, it is more convenient to use. In the Make App icon page, you add the image you will use to do icon, and then leave your email address, and the system will eventually be sent to you in a ZIP file, which supports PNG, JPG, and PSD files in different formats. (Send time will be a bit long ...) )
You'll also realize how much time you've wasted in reading each icon size description and adjusting each icon.
Fluid UI
The Fluid UI is a Web prototyping tool for mobile development that enables designers to efficiently prototype a product. Pros: No device restrictions, no platform restrictions (Windows, Mac, Linux systems), support for Chrome and Safari (apps on Chrome are also available offline). Drag-and-drop operation without the need for programmers to write code. In addition, the Fluid UI Library is rich in resources for iOS, Android, and Windows 8. If you feel that inventory resources do not meet your needs, you can add them yourself.
For small teams that like to develop quickly, Fluid UI High fidelity simulates user experience and operation. Even after the prototype is created, the developer can perform touch testing to share the mobile user experience. In addition, developers can iteratively develop on the fluid UI! The Fluid UI offers a free version and a paid version: the free version supports 1 projects, the rest is charged according to the number of supported projects, such as 29 USD/month for 3 projects, 49 USD/month for 10 projects, 129 USD/month to support 10 or more projects.
Sketch
Sketch is an app on a Mac that's a great Vector/pixel hybrid development tool that can help you create retina images. This app can be used as a substitute for Photoshop and fireworks, and includes a number of developer-friendly features such as "Export to CSS" and "Export for Retinaoptions". Get Sketch (Price $49,15 days free trial).
You are welcome to continue to add ...
Development
Once you have the initial UI and design elements, you will start coding, and some of the tools below may help you.
Sourcetree
Sourcetree is a free Mac software that is used primarily for git and mercurial version control. In my experience, most iOS developers use Git, and a small number of them are using mercurial and SVN.
Sourcetree can help you with your source code control program, and Sourcetree is a unique GUI tool compared to traditional, complex command-line version control software. For novice git users, sourcetree is simple and efficient to use, and Sourcetree has a very powerful feature for experienced app developers.
In addition, Sourcetree has some great features, such as incoming and outgoing changes, as well as intuitive branch management capabilities. Sourcetree allows you to save a lot of time on the operating terminal.
IOS Boilerplate
People who do web development have heard of HTML5 boilerplate, this time we are introducing iOS boilerplate. With iOS boilerplate, you can skip the initial coding of many projects. iOS boilerplate is not a framework, it's a basic template for an iOS app, but it also contains some of the same firmware and some widely used third-party libraries, so you don't have to reinvent the wheel.
In addition, you can modify and expand the boilerplate to suit your needs, whether it's a personal app or a business-class app.
AirServer
Sometimes it can be useful to show the app on a big screen, or you might want to show a bug-fixing screen, but you don't want to go into full-screen video editing mode, so AirServer is a good choice. AirServer is a very simple Mac and PC app that moves your iphone or ipad screen to your computer. AirServer can turn your Mac into a AirPlay terminal by wirelessly transmitting audio, photos, videos, and third-party apps that support AirPlay features from your IOS device to your Mac computer's screen, via your local network. After installing the AirServer software, the iphone or ipad will display a list of devices available for airplay, select your PC, and your iphone screen will instantly appear on your computer, just like Apple TV's relationship with television. This is very useful for group demos and is suitable for large development teams for app-related testing.
Easy APNS
Easy APNs is a PHP script to manage Apple push notifications. If you are interested in the backend portion of the Apple push notification, and you happen to be familiar with PHP, Easy APNs is a must-have tool in your toolbox. Easy APNs is fully open source, and the settings are very simple. By using free, open source PHP scripts, easy APNs provides developers with a very intuitive way to control the back-end portion of the entire push notification.
Slash
Slash is an open source library for iOS that adds an extended markup language to the Nsattributedstrings style, similar to HTML, but you can define the meaning of each tag, which makes it very extensible.
It's easy to display property strings in IOS6, but it's not easy to create them in a programmatic way. If you want to use an attribute string in your app without using the interface builder, you need to adjust the nsranges and font properties. With Slash, you can simply use the property strings in iOS development, and the resulting code is cleaner and cleaner.
You are welcome to continue to add ...
Server-side Services
Over the past few years, we have witnessed the rapid growth of server-side services for mobile developers, which claim to address similar storage, content delivery, and real-time functionality. A higher reliability and toolset can help developers reduce development time effectively, and it may be time to consider using server services in your next app. Here are a few brief introductions to this service:
Firebase
Firebase is a San Francisco-based backend service provider focused on real-time back-end data processing for apps that require high real-time data, such as Web games, collaboration tools, and more. With Firebase's services, you can create a unique experience for your users, especially for multi-player apps. Firebase now provides database services for multiple applications, including Scratchpad.io, Twitch, and Klout.
Firebas's service is very simple to use, just a single line of JS code, you can configure the Web App needs of the database storage services. Simplifies coding, allowing users to focus on the problem itself, saving development time. In addition, with the Firebase service, developers can implement real-time data updates without having to purchase a server, and users get new data without having to refresh the page. Firebase has released a new iOS SDK that can also help iOS developers solve certain data storage problems.
Urban Airship
With regard to push notifications, we have many other options besides Apple's APNs, and Urban airship is one of them. Urban Airship is one of the oldest and most trusted push service providers in mobile development, and the company is located in the Oregon State Portland region. Not only do they do regular push notifications, they also invent "rich push" that pushes richer content, such as HTML, audio, video, and more.
In 2009, Urban airship started offering push services to iOS developers, and developers can easily integrate it into their apps. Urban airship has been innovating at the same time in consolidating its core business, and is currently pushing content related to geofencing, location targeting, the location of history and Passbook creation. Urban Airship's location-aware feature can send the right information to your mobile phone users at the right time.
Kinvey
Kinvey claims to help developers get out of the dilemma of creating and maintaining a mobile backend. Kinvey is a cross-platform service with features such as user management, business logic, data storage, push notifications, extensive file storage across CDN, analytics, automated versioning, and other features. Kinvey is a powerful platform for both individual developers and enterprise-level developers.
Parse
Parse is a feature-rich back-end support platform that helps developers work with data storage and scaling to reduce the difficulty of developing iOS or Andoird applications, allowing developers to devote time and effort to creating a quality user experience.
Parse also has social and notification push capabilities. In addition, if you want to add an e-commerce system to your app, the open source app developed by parse and stripe can show you how it did it. Parse has its own features, documentation, and tutorials, and continues to innovate in this field.
Stackmob
Stackmob is also a company that provides mobile app backend service solutions, a cloud-based system developed by the company that simplifies the development and deployment of mobile applications, with the goal of meeting all the needs of mobile application developers through an interface. If you are working on a group project, then Stackmob's coordination tools can greatly reduce the difficulty of collaborative development between developers, designers, and clients.
Stackmob also offers app developers services such as app Analytics, S3 integration, facebook/twitter integration, advertising, and geolocation. Stackmob supports iOS, Android, and HTML5 platforms.
You are welcome to continue to add ...
Testing and Marketing
Testing is a very important step in the app development process, and before the app is available in the App Store, developers need to make sure their apps run smoothly, save time and reduce the workload of the customer service staff. There are a number of services available for testing, user feedback, and app crash reporting, and there are a few common references below:
TestFlight
TestFlight is a testing service used by many developers, including feedback, real-time crash reminders, and user feedback cues that can cause specific ratings within the app. Any service will be flawed, TestFlight is no exception, it has a flaw in managing the files provided by the test user. Not long ago, TestFlight launched a new mobile analytics service in a closed test Flightpath,flightpath seems to replace its own TestFlight live analytics service. TestFlight Live was launched in 2012. TestFlight now supports Android platform app testing.
Pieceable Viewer
Pieceable Viewer is a product that allows people to run iOS apps directly in a browser, allowing developers to display and test their apps more simply and intuitively, in fact a service that moves apps to the web. Developers can view and test their apps on a Web page without having to install the app on the device. In addition, you can easily collect user feedback, users do not have to have an Apple phone to access the app.
CEO Fred Potter once said: "It's the simplest way to share the iphone app on the Web, and the Pieceable Viewer uses Flash to emulate the functionality of the application without correcting the code written by the developer." ”
Smore
Smore is a web app that quickly makes e-flyers online, supporting not only images and text, but also video multimedia content. Use Smore to create an e-flyer for your app that requires, describe, etc. you need to submit your app to AppStore. Smore offers several optional themes that you can edit yourself if you are not satisfied with your system-generated e-flyer. In addition, Smore provides traffic Analysis Services, and you can clearly know how users discover your app.
Tokens
Tokens simplifies the process of generating and distributing free promo codes for itunes Connect, whether it's releasing new apps or updating app versions. In addition, tokens can track your promo code distribution objects and whether they have redeemed promo codes, which can help you optimize a limited number (50) of promo codes to avoid wasting.
countly
Countly provides developers with a real-time, open-source mobile analytics platform that visualizes data collected from mobile users and gives developers actionable advice. Developers can easily deploy countly server-side code on their servers and integrate the development toolkit into their apps. Currently, the countly Analysis system has two versions of the development kit for iOS and Android. If you are familiar with Google Analytics and Flurry, then countly can also provide the same functionality.
iOS Development Tools-20 tools to help you streamline your mobile app development process