You have this grand app idea that will change humanity forever, but the only thing standing in your way is the App Store. Hundreds of thousands of people have created apps before you. If they can do it, so can you. Use this guide as a starting point for your iOS 7 iPhone or iPad app development.
What You Need Before You Begin
Mac Computer and cables that come with it – Sadly, you can’t develop for the App store on Windows or Linux, so you will need a MacBook, Mac Mini, or an iMac.
iOS 7 SDK and Xcode 5 – To build your apps for the new iOS 7, your devices must be running iOS 7 and your Mac must have Xcode 5 with iOS 7 SDK installed. If you don’t have the latest release of Xcode, download it now. The SDK kit, which includes an iPhone simulator that lets you test your app, is included with XCode.
Apple Developer License – The basic license costs $99 per year. You must have this license to test your app on an iPhone or iPad and to submit to the App Store.
Image Editor – Make sure you have Photoshop or something similar nearby if your app is a game or requires an unique interface that you are creating.
How Will You Create Your App?
A cheap way to make your app would be to find a local company that specializes in app development. A cheaper way would be to go on a freelancing website like Elance and search for app creators. The cheapest way is to make the app yourself. The following tutorials provided by Apple will head you in the right direction. Combine that with technical forums like iPhone Dev SDK to ask your relevant questions and you’ll have your iOS 7 app up in no time.
Getting Familiar with XCode
Before you do any design, you will need to know the basics of Xcode and design patterns. Xcode includes a source editor, graphical interface editor, and a workspace window that includes your app-creating tools. Design, write code, and debug all in this workspace. Also included is tools to test, optimize, and submit your app to the App Store.
Obtain Development Certificate
You must obtain a development certificate to run your app on your device, which you can get through the XCode Organizer window. This certificate will also work if you choose to continue editing your app on a different Apple device.
Select your device, choose “Provisioning Profiles”, click Refresh on the bottom right of the window, then enter your Apple Developer username and password. Log in, submit request, and then export your developer profile immediately.
Provision Your Device
To run an app on a device, you must install a provisioning profile on the device, which lets your app run by identifying yourself via development certificate and your device by listing it’s UDID.
Connect your device to your Mac, open the Devices Organizer, select the appropriate device, and tap the “Use for Development” button.
With a development certificate and provisioning profile in place, you can now begin to test, develop, and run your app on this device. Follow this Apple tutorial to create and test a new project. Once you’ve read the tutorial and tested aspects of XCode, you should have a basic app that looks like this:
Designing Your iOS 7 App
Before you start coding, you must have a vision of what your app should look like and what it accomplishes. Decide on a user interface, what useful features it should have, the kind of data model your app will use, and so on. Here are other important questions to ask yourself to figure out how to bring your design decisions to light.
Start Coding with Objective-C
Get your developer clothes on because it’s time to code. Objective-C is the language that runs the iOS 7 apps. You need to understand Objective-C to create your app, as you can’t build an app in other coding languages.
If you are a Mac developer, C Programmer, or understand Java, learning Objective-C will be a breeze as the basic syntax is similiar. For the rest of us, you must read this Apple tutorial which includes methods, class declarations, messaging, and declared properties.
The next step after you know the Objective C basics is to acquire the basic programming skills necessary to form basic tasks like creating, comparing, and querying objects.
Test Your App
Now that you can code (wow that was fast!), bring up XCode, and create a new iPhone project. The only necessary info to submit is architecture, device type, SDK, and certificate. From the Groups and Files list, select your project name, hit “Info”, and then “Build”. Go to where the Certificates are listed. Concern yourself with the “Development” option as that will work for the simulator and your device.
If you want to see how the app looks on your iPhone or iPad, select Simulator and Debug from the drop list and click “Build and Run”, prompting the iPhone simulator and your app. Plug in your device, choose the “Device”, “Debug”, and then “Build and Run” again. The app should then appear on your iPhone or iPad, causing smiles and confetti to rain down around you.
Analyze Your App’s Performance
Launch “Instruments” in XCode to check and improve your app’s performance. The below picture is “Instruments” gathering data from your apps in a graph timeline:
Here you can check data about your app’s memory usage, disk and network activity, and graphics performance, so you can see what you need to improve.
To view this, do the following: Click “Product” then “Perform Action”, then “Profile Without Building”. Click All in the left column to reveal the templates. Select the “Leaks” template and choose “Profile”, which will open the “Instruments” app along with the iOS simulator running your app.
What If My App is Crashing?
App crashing while testing needs to be fixed, as a constantly crashing app will be rejected in the submission process. iOS Simulator will assist you in not just in designing, prototyping, and testing your app, but in debugging as well. Choose “debug” and read the error messages. If you still can’t figure out what’s wrong, copy the message and either ask for help in the appropriate forums, or see if someone has encountered the same problem via Google search.
Test Again Before Submitting to the App Store
Xcode allows you to share your app with testers before releasing it into the wild. Start this process by using the “Scheme Editor” to create an archive of your app in Xcode. Then use the “Archives” organizer in Xcode to share your app with others for testing.
Submitting to the App Store
Once you are sure your app is ready to go, you need to do the following before submitting:
Write a description of your product, filled with relevant keywords so that it can be found while searching through the App Store. You need three icons sized 29 x 29, 57 x 57, and 512 x 512. You also need a full sized image that appears while the app is loading, as well as one to four screenshots that will appear below your app description.
Now you can submit your app through iTunes Connect. You will be asked to set the price of your app.
Your app must be approved by App Store reviewers before it’s published. It will be rejected if it’s considered pornographic or objectionable. Also if the app is prone to crashing, has a malicious backdoor, or uses a private API, these are all causes for removal.
If your app is reviewed and accepted, it should appear in the App Store within a few days to 2 weeks, prompting one of the greatest feelings in the world.
Spread the Good News
Promote your new app in every avenue you can think of: tweet about it, make a Facebook status, market in Google Plus communities, write in relevant forums, run banner ads, and blog about it.
Apple also lets you generate a number of promo codes for paid apps that unlock free downloads, so put those to good use.
To move up in the App Store search, you need good reviews and 5 star reviews. Ask your friends to rate your app to increase exposure.
Thanks to the iTunes Connect Mobile app, you can track your sales, downloads, and various other metrics.
What’s Changed in iOS 7?
This guide just scratches the surface of iOS 7 app development. Here’s some recent tutorials that are required reading to help you with your new app.
ON XCODE 5: Review: Xcode 5 makes better, faster, stronger iOS and OS X apps
ON OBJECTIVE-C: What’s New in Objective-C and Foundation in iOS 7
ON FRAMEWORKS: iOS 7 Development: Everything You Need To Know To Get Started
ON DEVELOPMENT: Top App Store Developers Discuss iOS 7 Development Processes
ON DESIGN: How Apple’s iOS 7 Changes Everything For App Designers
Most applications for iOS require database backends to call home and store data. HostDime offers a wide variety of servers that provide mobile developers a way to create their dream app.
Ask questions, add content, or correct any errors in the comments below.