Starting iPhone development - iphone

I have just started to work as a freelance iPhone developer. Earlier I used to work under an organization so I dont know what exactly things are required for iPhone development. I have knowledge about the things but all things are scattered in my mind.
So I am having some questions regarding iPhone development .
Is it necessary for me to have a developer certificate before starting developing for iPhone?
If I am developing an application for some client , then is it necessary for the client to register as developer so as to post app to the app store? What If post the app using my developer certificate?
What I get in return after I pay 99$ to Apple to run the app on my phone?
My question may seem wierd but I am so much confused over all these things. Kindly bear with me.

Yes, if you want to test on the device and not just the simulator
If you post it using your developer certificate, it will go under your name/business.
If your talking about money, nothing, you get 70% of the profits made by your app. The 99$ is a membership fee not a security deposit. If your talking about benefits, the ability to run your app on device, ad distribution profiles, submitting to the app store, loads of WWDC content, ability to use iAds, and access to iOS beta's and developer forums.

1) No, but you can only use simulator. You need dev cert for tesing with an actual iPhone.
2) It's up to you and your client, it will only change the publisher name on iTunes. Note that each year, subscription has to be updated, otherwise the app is taken from AppStore automatically.
3) You can test your apps in actual devices. You can publish apps in App Store. And also have access to some developer resources.
I suggest you read developer.apple.com for all the details.

Related

Publish my App without going through the App store?

I have an App just for our clients, this app is based on a web system. Clients have their private authorization to login the App.
The quantity of clients is depend on the sales of the web system.
I'm not sure this private app can passed by app review, and how can I deploy this app to our client's iphone.
Sorry for my poor English, I do need help for this question, the date of selling the product is getting closer and closer. HELP PLEASE!!
See Distributing Enterprise Apps for iOS 4 Devices.
I'm sorry, but without jailbreaking (For a definition, see this wikipedia article) the recipient iPhone, you cannot get an unapproved app onto an iPhone.
Since the app is still in development, you can easily test the app on a iPhone using the iOS Development tools, however this is only a limited method of distribution: it would likely be unsuitable for general resale of an app to the public.
Finally, if an App cannot get through Apple's guidelines and approval process, they probably don't want it on their iPhones. This could be because it is illegal, has damaging content or their just being a bit monopolising.

Can I put my own app on just my iphone?

I want to create an iphone app for personal use.
Can I just put it on my phone and use it or do I have to go through the iphone store process to get it on my phone?
Thanks.
As long as you have a valid developer certificate to sign the app and you have a development provisioning profile and your device is registered as a test device. For that you need to be registered as an iPhone Developer Program member.
In other words, you have to pay Apple $99 to be able to put your own app on your own phone.
Yes, you can run your own apps on your phone. You need a paid iPhone developer account though.
Purchase a developer account for $99 from Apple. Create a developer provisioning file and build to your device. The annoyance will be the provisioning file is good for a limited time, requiring you to update it periodically and rebuild.
To run an app on an un-jailbroken iDevice, it needs to be signed. Registered developers get personal signing keys (and also have to register the device) which lets them test their apps. They also can do ad-hoc distribution, meaning compiling and signing an app so that other people can use it without being registered. This is limited in the number of users who can use it though.
Enterprise developers can sign apps for internal distribution, sorta like unlimited ad-hoc, but that program is expensive and unnecessary for what most people do.
As pointed out by others here, you can sign up as a developer to temporarily install apps on your device for testing purposes, but you would constantly need to renew your phone's installed provisioning profile to keep using it over time.
The only way to permanently put your own application on an un-jailbroken phone is to publish it to the app-store and download it through iTunes. Of course, Apple would need to accept the app so you would need to face the same regulations as other apps sold via iTunes, and your app would be public to everyone.

Personal iPhone application without paying?

I want to develop a little iPhone application, just for my personal needs. I don't want to sell it or give it to anybody as it will not be useful to anybody.
Can I have this application on my iPod/iPhone, without having to pay/suscribe/be on the Apple store ?
You need to pay the $99 for the iPhone Developer Program in order to be able to install your application onto the iPhone/iPod.
You can, by Jailbreaking your iPhone and then installing the AppSync program from Cydia. Then you can either build your app as a release and drag it into iTunes and sync your phone or change some settings (look it up on google, putting Xcode project on jailbroken device) in the Xcode project settings and open the organizer window and click on the use for development button on the device's page.
Jailbreaking your device will void your warranty if Apple find out (ie if you go into a shop and ask them to fix your device if it ever breaks without clicking restore in itunes to unjailbreak it)
With the Spirit jailbreak, Jailbreaking is as simple as plugging in your phone and pressing jailbreak.
(and the US Government has said that Jailbreaking is legal: http://www.pcworld.com/article/201892/us_government_iphone_jailbreaking_is_fair_use.html)
You could write you program and test in the simulator with the free SDK.
When you are satisfied you could send the source code to a licensed developer, I'd suggest some friend, that can build an AdHoc version for you to run on your own device.
A little tricky and you need to let another developer see the code. This app will also only last a year or less as certificates and profiles are time limited.
Why don't you write it as a website that is iPhone friendly then go to the site in your phone's browser and save a link to the site? It will show up on your desktop similar to an app. To have a true "app" I am sure you have to pay apple.
No, you can not.
It depends on what your definition of "pay/subscribe/be on the Apple Store" is.
Yes, you have to pay a subscription to the Apple iPhone Developer programme to get access to a provisioning profile to enable you to put an app you have built onto your iPhone/iPod. This will cost you $99.
The dev tools (Xcode/Interface Builder) are all free, but without the dev programme subscription you will not be able to put your app onto a physical device, only the emulator.
But no, you do not need to distribute your app via the app store to deploy it to your own phone. However, if you do not distribute the app via the app store then it ultimately doesn't get digitally signed by Apple and when your provisioning profile expires you will not be able to run the app on your phone until you have renewed the provisioning profile.
Well you may be able to do it if you jailbreak your iPhone. I haven't tried it myself but I found this link.
You'll have to decide for yourself about the moral implications of by passing apple's security.

What does the iPhone developer program give me over and above simple registration as an iPhone developer?

Simply put; what does my $99 get me, that I can't already get for free?
OK, OK, sounds like a dumb question, but the Apple site is not clear to me.
My hunch is that you get the ability to submit apps to the app store for your 99, but you could get everything else for free, but it's not clear to me hence the question.
After paying the $99 the main benefits are shown below:
Install your developed apps on your device without Jailbreaking
Submit and distribute paid and free apps to the Apple App Store
Access to coupon codes to distribute your paid app to reviewers (neat feature)
Distribute an internal app using ad-hoc distribution for up to 100 devices
Free additional marketing if your application is popular (generally not available to everyone)
Those are the main benefits, I don't think I have forgotten any of the key benefits.
You cannot actually run your program on a any iPhone/iPod touch, including the one you own, without paying the $99.
For $99 you can run your app on your actual device and you can sell your app.

iPhone app without AppStore

We have an industrial app that currently runs on a very expensive ruggedized PDA.
Since most of the engineers we sell to have iPhones we are considering moving to the much nicer newer platform.
A couple of questions:
Is it possible to sell iPhone apps with out the app store? Apple taking a 40% cut of a 99c iFart app is one thing but this is a $3000 engineering calculation app. We have also heard of the hassles some people have had getting apps approved.
Can we sell an iPod touch (I understand selling an iPhone without a contract is trickier) with pre-packaged software.
ps. Sorry for the anonymous posting, the company is a little nervous about our relationship with the PDA maker.
There are basically three different official iPhone application distribution methods that I am aware of:
- App store
With this method anyone with an iPhone can have access to the application. You can distribute an unlimited number of applications like this. Apple gets a 30% cut. Of course Apple must approve your applicaion.
- Ad hoc
You can distribute applications using ad hoc without going through the app store, but you are limited to a maximum of 100 devices. With this method you can distribute you application from a web site, email, etc.
- Enterprise
The method is for internal distribution in companies with more than 500 employees. Apple does not provide any more public detail that I could find on this method.
It doesn't sound like any of these methods meet your criteria unless you have fewer than 100 customers and don't plan to exceed that number. It sounds like from the question your customers are not internal to your company.
I would advise contacting Apple. They might be able to work out some kind of custom distribution deal.
Enterprise developer program allows in house distribution, avoiding the appstore. It's $299 vs $99 and doesn't include AppStore distribution.
For companies with 500 or more employees who are creating proprietary in-house applications for iPhone and iPod touch.
Apple also has a B2B Program, which sound like you are aiming for. It allows you to sell your apps directly to other businesses. You can find out more here: https://developer.apple.com/programs/volume/b2b/
Spotify has a free app you can download, but to use it you have to have a Premium account. So you don't have to sell your app for $3000 to go thru the app store.
You can give the app for free in Appstore, but it will require an online activation. The online activation will cost 3000$. If apple would not accept the app, you can try to create a very limited version (without activation) and get it accepted in appstore. Then release un update for it, which will enable online activation system.
It's a pity - the iPhone/iPod touch could make a really nice platform for automation/interface stuff.
I was working on an embedded industrial platform recently - a 16bit micro, 64K memory, a serial port and a 120x128 2 grey level screen for $1000/unit and $10,000 for the appalling OS/devkit.
I can't see how apple could possibly care if you purchase iPod touches, jailbroke them, installed your app and sold them to customers.
For a $3k app, the $220 for an iPod Touch is less than 10% of the sales price.
Testflight. Google it. Basically you get an account with testflight. Put your app on testflight. You send your customer an email and they click it on their iphone. It sends testflight an email with your customers device ID. Testflight sends you an email saying "a New customer requested your app" and their device ID. You add their device ID to your provisioning chain and rebuild your App. Upload it to testflight, they get a notification that it's ready, and they can install it. Somewhere in there be sure to get your money :)
Native app, no. However, you can create it as a Web App that's specialized for the iPhone, in which case you circumvent the app store altogether.
You could consider a HTML5 app on Safari which offers many of the features of an app like offline access, local storage, canvas for rich graphics etc. No distribution issues and no commission. Depends what you need - access to camera, compass I think is not possible. (Also: works on Android)
Edit:
Here's a great intro -
http://sixrevisions.com/web-development/html5-iphone-app/
How to Make an HTML5 iPhone App
Build a version of Tetris that is "for the most part, it’s going to be a pitch-perfect imitation"
Full Screen
Offline Cache
Persistent storage
If your app is pretty expensive, you probably have few customers and they receive personal support, so what you could do is the following:
Have each customer get their own Apple developer license ($99/year). Your support can talk them through the process, or you can probably do it for them. Give them a discount/credit for the $99 they pay to Apple.
Compile your apps logic into a library, and make a thin shell that loads code from the library.
Give the customer the XCode project for this shell, and the binaries for your code :-). Write a little OS X app that triggers the download of XCode, the compilation, and installation, so they can "compile" and deploy "the app they are developing" (a.k.a. your app) to their devices. Or, do it as a service for them.
Don't forget to get your lawyers involved. I'm sure there are ways to look at it in which this is legal, and interpretations in which this violates some license. There is probably a way to make this waterproof, e.g. by calling your customers "developers" and yourself "consultants" in the contract or something. Helping a customer compile their app is not prohibited :-)
If you do this, deployment is not going to be so smooth as if you go the official way, but you'll save a lot of money. For a $3000 app, instead of 30% you'll give Apple 3.33%. I haven't done this, and I don't know anybody who has, and can't even recommend it, but I also can't see why it wouldn't work. So it might be worth a try.
I wish. Short answer, no.
There is some kind of a hack, whereby you isntall your app in a ad hoc manner, but you can only have 100 devices. Painful road if you ask me.
The way to do this would be to give the app for free in iOs store.
But charge $3000 for an activation code or subscription fee purchased from your website.
You will need to give the free app some basic functionality of some kind, however. Apple won't approve the app if it doesn't do anything without the activation code.
If it was me I would do one of the follow:
1) Submit it to Apple and sell it for free. They then enter a license code bought from you to access the full feature set. Include a welcome page, about us, contact page for unlicensed functionality. As Apple won't approve it if it does nothing.
2) Get the companies you're selling to to open an Enterprise account with Apple. Then you build the IPA and sign it using their credentials and send them the IPA.
Good luck.
This article summarizes all the answers to this question and discusses Apple's B2B, iOS developer enterprise program, adhoc distribution and testflight.
http://mobiledan.net/2012/03/02/5-options-for-distributing-ios-apps-to-a-limited-audience-legally/
All of the solutions (except the test-oriented solutions, which are limited), however, force you to get Apple's approval before publishing and updating. This process can take time and can leave your users stranded when you have a critical bug that needs a quick update.
If this is a deal breaker for you, you might want to try developing the app for Android, which also has advantages and drawbacks, but in your specific case, gives you more flexibility.
In Android, you can email an APK file, a user clicks it, and the app gets installed on the device.
In iOS, every devices that is not a member of the "enterprise program", "b2b" program or is provisioned for testing, cannot install the app.
You have to jailbreak the iPhone to put an app on it not from the app store.