views:

142

answers:

4

Hello, I've heard that apple drops a lot of app submissions due to their stiff terms. I dont want to get too far with my project because i know that it will be hard to rewrite it later.

Now i began rewriting it to Objective-C (from c++) because i got somehow the impression that apple takes only pure objective-c code. In some places on the net, people offers solutions in c\c++ for problems which cannot be solved with objective-c which makes me kinda think rewriting again.

In order to clear things out, can someone please give me a direction to where can i find those iphone-code-terms of apple?

Thanks Amir

+8  A: 

You can use C++ or Objective C++ in an iPhone app for the AppStore. There's no problem with that. Obviously you'll need some Objective C or Objective C++ in order to present a UI to the user, but everything else can be straight C++ if you're so inclined. Many applications (particularly game ports) take this approach, using C/C++ code developed on other platforms, and 'wrapping' it in an Objective C shell.

Ben Gottlieb
+1  A: 

At least the SpeakHere sample application makes extensive use of C++. If that has, chances are that many sample apps do (and hence that your app may use C++/Objective-C++).

Frank Shearar
+2  A: 

You can use any language you like, provided it is compiled code. Interpreters are banned, which means no Python or Ruby... but you can use Lua, lisp, C, C++, Obj-C, Java (using something like gcj, not a JVM), D, Haskell, or anything else that can compile to ARM code or a static LLVM backend.

Andrew McGregor
In actual fact, there are many approved apps that interpret code at runtime. The ban is rather on executing *downloaded* code. If you're only executing scripts/bytecode that are included with the app, there doesn't seem to be a problem.
Felixyz
Just make sure it only executes the provided code. There was a Commodore 64 emulator (or some similar computer) that was intended to run supplied BASIC programs. Somebody noticed you could break out of it into a system prompt, and Apple yanked it from the store.
David Thornley
A: 

Objective C is a super set of C++, so it should be no problem if you use C++. The full terms and condition are at http://developer.apple.com/iphone which is a must for any iPhone developer. The SDK is part of the 99US$ membership and includes tools you will need, such as the iPhone simulator and tools to allow you to test your app on your real iPhone. Additionally, you will need this membership to submit your app to the appstore.

Victor
"Objective C is a super set of C++" -- this is false.
ergosys
Objective-C is a superset of C, not of C++. Not that there's any problem with using C++; the important thing here is to use only documented APIs. Also, the SDK is available for free, along with some support materials, if you just want to try it out. It won't let you install apps on a real device, or upload to the app store, unless you pay the $99.
David Thornley