IPhone Development Client Guide
The ManyFriends.com business model revolves around delivering a blissful software development experience. When we're done with your project, you will be ecstatic not only about the finished app, but about the entire development process experience.
This wiki is part of that.
This wiki is a constant work in progress. If you notice flaws, have suggestions or comments, please let me know. Thanks! In order to reduce spam, I have obscured my email a bit. Hopefully you can figure it out. Suggestions & comments to: support -at- manyfriends dot remove-this-part com.
ManyFriends.com is in the business of software development and, lately, a lot of our work has been iPhone/iPad development. In particular, we've been doing a lot of contract work for folks who have an idea for an iPhone app, but need us to do the coding.
We've found that over the course of doing iPhone and iPad development that many of our new clients have similar questions and concerns. This wiki is an attempt to gather all of the "things you might want to know (and maybe some stuff you didn't know you might want to know)" into one place, where it can be referenced and updated. Each time I need to present similar information, I will review that section of this wiki, make any updates that seem valuable, and point the new person to the appropriate page. Over time, this should lead to a fairly useful collection of information. Cross your fingers!
- 1 Product Development
- 2 Tools, How-To, FAQ
- 3 For Developers
- 4 Administravia
It seems that everyone I run into has an idea for an iPhone/iPad app. You've got an idea, and you're thinking of hiring someone (maybe me!) to write the app for you. How can you expect things to unfold? Hopefully, this guide will help you find the answers.
From idea to product
- Maybe not as much as you think! Experience has shown that most of the app ideas people have are fairly straightforward, technically; most of the work is just a matter of arranging all the pieces. The hardest part, for many of these apps, is the generation of content (images and sounds), which the client often chooses to do, themselves. (NOTE: We have artists and UI designers available to do this work. However, many clients choose to provide their own content.)
- Most projects follow a similar flow, starting with "we chat about the app some" all the way to delivery of the finished product.
- There are several things you can do early on to help your project evolve more smoothly and, in many cases, save money!
- As the project winds to a close, there are several decisions you must make to allow your app to become reality in the AppStore.
App-store submission and beyond
- Step-by-step guide to App submission.
- Submitting your app to the iTunes store requires some process.
- The app-submission and review process is a bit mysterious, and Apple is not always clear or responsive. These hints have proven helpful in dealing with Apple regarding your app submission.
- Many people have little or no experience being "the face" of a company that produces a consumer-oriented product. These hints should help you prepare to respond to your customers.
Tools, How-To, FAQ
- Photoshop document with iPhone/iPod-Touch UI elements on layers, simplifying mock-up production.
- Photoshop document with iPad UI elements on layers, simplifying mock-up production.
- ... Apply to ADC to become an iPhone-Developer.
- ...Set-up a FogBugz account for work, issue and project tracking.
- ...Set-up a BitBucket account to keep your sources organized.
If you plan to view/use the source code
- ...Determine your terminal name (whoami).
- ...Install the development environment.
- ...Get your source code from subversion.
- ... Create an ad-hoc provisioning profile, so your developer can send you progress previews.
- ... Send your UUID to your developer (or anyone else.)
- ... Set-up mail on your iPhone/iPod-touch.
- ... Install an adhoc preview of your app (i.e., one sent by your developer.)
- ... Alter your ad-hoc profile (i.e., to add or remove devices.)
- ... Create your Distribution profile (so your developer can build the version that you'll submit to the AppStore.)
- ... Prepare your app for submission to the iTunes Store.
- ... submit your app to the iTunes Store.
- ... Updating your app once it's already in the AppStore is a very similar process; follow the instructions for submission.
- ... Track your sales.
- ...Use subversion
- ...Create app demo videos
- ...Stuff you can't do (Features you may's well not ask for, since they can't happen in iPhone-OS.)
- ...Become an iPhone developer. (Tips for folks who want to dive into this particular pool, and those who just want to dabble their toes.)
- ...Avoid app-rejection from Apple
- ...Take a screenshot on your device:
- Briefly (about 1/2 second) hold both the Home button and the Power button at the same time. The screen will "flash" as if taking a picture.
- ...Get pictures off the device:
- Use iPhoto or other camera app. Your computer treats the device as if it were any other digital camera.
- My Analytics show jailbroken users and sessions, what does that mean?
- Should my app support Legacy iPhone-OS versions?
- Do you charge to fix bugs?
- How do I select a bundleid for my app or IAP product?
- What is a developer certificate?
- What's your policy about... ?
Visit the Developer Page for resources for other folks making a living in iPhone development.