Jump to content

  • Log In with Google      Sign In   
  • Create Account


Tools for iOS/Android Apps


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • This topic is locked This topic is locked
32 replies to this topic

#1 rancineb   Members   -  Reputation: 357

Like
0Likes
Like

Posted 02 February 2013 - 08:56 PM

So I'm starting to get back into programming and want to take a shot at game development (hence why I'm here).  I've been going back and forth in my head trying to figure out what direction I want to go.  At first I was thinking PC or xBox games, but now I'm leaning towards learning how to make mobile apps for iOS and Android.  I don't think I'll have the time to commit myself to making a full RPG game like I dream about, so figure I should aim for smaller games and apps for mobile so I have a higher chance of delivering.

 

My end goal is to make a fun, simple RPG mobile game and I have a few ideas that could be neat.  I'm a ways away from that, but that's that point I want to reach.  In the meantime, I want to try and make some basic education apps for my sister who is an elementary teach.  I figure this would be a good start to learn how to programs apps for iOS and Android, and then I can take the next step to make a full game.

 

From all the questions I've asked before and what I've read in other forums, it sounds like C# is the way to go.  What I'm trying to figure out now is the best tools to go about programming apps.  I've always used Visual Studio for programming in the past, but that was a long time ago.  I see that Apple offers a program called Xcode for making apps.  Is this worth getting, or are there other programs (like Visual Studio) that are fine for making apps as long as you get the APIs for iOS and Android.  What's the most popular tools for making apps and games for iOS and Android?

 

Thanks for your help.



Sponsor:

#2 riverreal   Members   -  Reputation: 616

Like
3Likes
Like

Posted 02 February 2013 - 09:31 PM

For iOS development the standard language is Objective-C. For Android development the standard is Java.

Using the respective SDKs you can create "from scratch".

 

But, you can use "Cocos2d-x" a c++ based framework for both (android + ios). http://www.cocos2d-x.org/

 

Or, Corona SDK, the problem (for me) is the "code-less" part. http://www.coronalabs.com/products/corona-sdk/

 

Or Particle SDK. With Java or ActionScript 3.0. Supports Android, iOS, windows, and HTML5. http://www.particlecode.com/

 

Or Marmalade SDK. With C++. http://www.madewithmarmalade.com/

 

Or Mono touch and Mono droid both with C# http://xamarin.com/monotouch - http://xamarin.com/monoforandroid

 

Or PhoneGap. With Javascript, CSS, or HTML5. Supports multiple mobile platforms. http://phonegap.com/



#3 rancineb   Members   -  Reputation: 357

Like
0Likes
Like

Posted 02 February 2013 - 09:35 PM

Also, right now this is just a hobby for me so I don't want to purchase anything to build these apps until I know I have something good and want to publish to the market.  I'm sure there are plenty of tools ideal for hobbyists.



#4 rancineb   Members   -  Reputation: 357

Like
0Likes
Like

Posted 02 February 2013 - 09:39 PM

Thanks for the suggestions riverreal.  I'll have to check these out.  Is there a particular one that you like most, or have heard works best?



#5 riverreal   Members   -  Reputation: 616

Like
0Likes
Like

Posted 02 February 2013 - 09:56 PM

Thanks for the suggestions riverreal.  I'll have to check these out.  Is there a particular one that you like most, or have heard works best?

 

You had better choose a tool that accommodates your likes.

If you are a beginner I recommend to DO NOT start with C++. So we can discard cocos2d-x and marmalade SDK.

If you want programming we can discard Corona SDK.

Particle SDK looks a little bit complex.

Mono solutions looks good for you. It works with C# and it supports android, iOS, windows, linux, mac...

PhoneGap is a mobile aiming framework, so it also is a good option.

 

I'm not passionate with mobile development so I don't have much experience.

I think you should wait for a better answer from a experienced mobile developer. wink.png



#6 Lifepower   Members   -  Reputation: 118

Like
0Likes
Like

Posted 02 February 2013 - 10:18 PM

You can also develop native iOS applications using FreePascal.

 

The incoming Mobile Studio of Embarcadero will also allow you to create native iOS and Android applications, which is essentially Delphi for iOS/Android.



#7 Chad Smith   Members   -  Reputation: 1100

Like
0Likes
Like

Posted 03 February 2013 - 12:41 AM

I just want to point out some things I don't think have been pointed out yet.

 

To have your app published and put on the Apple App Store you must

* be a registered developer ($99 a year)

* I am almost positive that you must have a Mac to submit it.

 

Now to have it published on the official Google Play Store:

* be a registered developer ($25)

 

It will cost to get a license to publish your MonoTouch games on an actual device.

 

While it is very good that you wan to start small, if you are new I would aim even smaller right now.  Developing apps to be published on a mobile device is still not an easy task and is not really for a beginner.  

 

I am not trying to bust your bubble or anything.  I just wanted to point those things out so you would know.  I wish you the best of luck!



#8 Plethora   Members   -  Reputation: 679

Like
0Likes
Like

Posted 03 February 2013 - 08:06 AM

While it is very good that you wan to start small, if you are new I would aim even smaller right now. Developing apps to be published on a mobile device is still not an easy task and is not really for a beginner.

 

Just want to point out that he said for a start he was going to try to work on some basic education apps for his sister the teacher.  Now if he's making specific apps for his sister as a means to help her out in the classroom that seems like a good start to me.  You can manually install and run android apps without ever having to touch the play store (I have no idea if the same holds true on iOS but I would imagine it must be possible even if just for development purposes).


I'm working on a game!  It's called "Spellbook Tactics".  I'd love it if you checked it out, offered some feedback, etc.  I am very excited about my progress thus far and confident about future progress as well!

 

http://infinityelephant.wordpress.com


#9 rancineb   Members   -  Reputation: 357

Like
0Likes
Like

Posted 03 February 2013 - 08:37 AM

Just want to point out that he said for a start he was going to try to work on some basic education apps for his sister the teacher.  Now if he's making specific apps for his sister as a means to help her out in the classroom that seems like a good start to me.  You can manually install and run android apps without ever having to touch the play store (I have no idea if the same holds true on iOS but I would imagine it must be possible even if just for development purposes).

 

Yes, you are correct.  I'm just looking to make some simple education applications for my sister to get use to creating app for iOS and Android.  I use to be a developer for a few years, but that was many years ago so need to get the rust out.  Figured this is a good start.  I'm definitely not a beginner, just don't know the interfaces and tools to develop.

 

This was actually going to be one of my follow-up questions.  I know you can load apps to android devices, but not sure about iOS devices.  I'm thinking the answer might be no just given Apples background.  Also, I sure hope you don't need a Mac to submit to the App Store.  If that's really the case, then screw them and I'm going android 100%. I don't think that's true though.  Such a limitation.



#10 Serapth   Crossbones+   -  Reputation: 5314

Like
1Likes
Like

Posted 03 February 2013 - 08:42 AM

If you'v got no budget, but want to target iOS and Android, I would highly suggest Moai, the biggest problem is the lack of documentation, so you will have to puzzle things out yourself.  I've done a series of tutorials that cover about 85% of what you need to know to get started, so you are on your own for the last 15%.  Fortunately, they have hired someone to work on the documentation and community relations, so hopefully things improve.

 

HaXe is another option, but I have little experience.  A number of other options, such as monoGame, libGDX or PlayN require monotouch (400$) to target iOS.



#11 Serapth   Crossbones+   -  Reputation: 5314

Like
0Likes
Like

Posted 03 February 2013 - 08:44 AM

I just want to point out some things I don't think have been pointed out yet.

 

To have your app published and put on the Apple App Store you must

* be a registered developer ($99 a year)

* I am almost positive that you must have a Mac to submit it.

 

There are ways around this.  Some of the cloud based systems, where you submit your code to their servers and they build it for you, can remove the Mac requirement.  A few tools let you also publish under their registered developer account, but I am unaware of the side effects of doing this.  I personally wouldn't do it, but then, 99$ isn't a huge barrier for me.



#12 rancineb   Members   -  Reputation: 357

Like
0Likes
Like

Posted 03 February 2013 - 09:04 AM

Thanks for your suggestion Serapth.  I'll take a look at your tutorials.  I still need to go over the Game Developer one that you're know for.

 

I'm not concerned with paying $99 to be a registered developer when I publish something.  I just don't want to pay $500 upfront for a tool to develop apps and end up not having the time to create something and have the money go to waste.  If I come up with a finished product that I like, then I'd be more then willing to pay a developer fee as well as any licensing for the tools I used.  Right now, I'm just a hobbyist.

 

On a side note, I'm surprised that the only way to publish is paying $99.  I can't imagine people paying that money to submit an app to make fart noises.  HA HA HA.



#13 Karsten_   Members   -  Reputation: 1573

Like
0Likes
Like

Posted 03 February 2013 - 12:29 PM

If you do decide to use C# (Which is pretty trendy with beginner programmers), then you will also need to pay a fee up front for monotouch / monodroid if you want to run / test your game on iOS or Android.

This is not the case with C++ (though the $99 apple developer fee still is required). Since you already have experience with programming, then I think you might be better off with this.

C/C++ is also the only languages I know of that supports *all* platforms. Not just platforms that a C# virtual machine environment has been ported to. Which might be important if you decide that iOS or Android are not the only platforms you want to target at a later date. (Things like pandora or the raspberry pi come to mind)

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.


#14 Serapth   Crossbones+   -  Reputation: 5314

Like
-2Likes
Like

Posted 03 February 2013 - 12:39 PM

If you do decide to use C# (Which is pretty trendy with beginner programmers), then you will also need to pay a fee up front for monotouch / monodroid if you want to run / test your game on iOS or Android.

This is not the case with C++ (though the $99 apple developer fee still is required). Since you already have experience with programming, then I think you might be better off with this.

C/C++ is also the only languages I know of that supports *all* platforms. Not just platforms that a C# virtual machine environment has been ported to. Which might be important if you decide that iOS or Android are not the only platforms you want to target at a later date. (Things like pandora or the raspberry pi come to mind)

 

There are tons of languages that support all platforms.  JavaScript/HTML ( web and native with third part apps ), Flash, HaXe, LUA, or of course applications like Construct2 or GameMaker.

 

The big downside to C++ on iOS is, well, XCode support for C++ stinks.  I would go far as to say XCode stinks, but some people seem to like it for reasons I can't quite fathom.



#15 Karsten_   Members   -  Reputation: 1573

Like
0Likes
Like

Posted 03 February 2013 - 12:52 PM

There are tons of languages that support all platforms. JavaScript/HTML ( web and native with third part apps ), Flash, HaXe, LUA, or of course applications like Construct2 or GameMaker.

Flash player for Linux has no 3D support.
Not a single HaXe output runs on raspberry pi, pandora, 90% of UNIX OSes.
LUA needs an interpreter... The reference (and fastest) is for C and this ultimately means that you are going to be using C or C++. If you don't use C/C++, then you are restricted by the limitations of whatever platform / language you have chosen and you are back to square one!
Javascript / HTML needs a pretty new web browser but a large issue is that 3D (via webGL) isnt supported on iOS for mainstream users yet.
Construct 2 or GameMaker... yeah right. These have no support for Linux.

Who the heck would waste their time with any of the above? Doesn't make sense.

The big downside to C++ on iOS is, well, XCode support for C++ stinks. I would go far as to say XCode stinks, but some people seem to like it for reasons I can't quite fathom.

When porting my game from any other platform to iOS... I dont touch Xcode. This is no argument against C++. An IDE for the Mac means very little to a developer when they don't use a Mac for development lol.

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.


#16 Serapth   Crossbones+   -  Reputation: 5314

Like
-2Likes
Like

Posted 03 February 2013 - 01:04 PM

LOL... people care about Linux anymore?

 

Linux on the desktop lost, hard, to Mac OS X.  There is a reason nobody supports Linux anymore.  Perhaps Valve and their push towards Linux will change things, but I highly doubt it.  The OP certainly didn't mention anything about Linux.  There is a very good reason why these cross platform tools don't bother targeting Linux... there is no demand.

 

 

As to IDE meaning very little to a decent developer, that's just nonsense.  An IDE is a productivity tool, and a pretty much universally accepted one.  Cutting off your nose to spite your face is just ludicrousness.  iOS development basically pushes XCode down your throat.   



#17 rancineb   Members   -  Reputation: 357

Like
-1Likes
Like

Posted 03 February 2013 - 01:56 PM

I watched a couple videos of Xcode usage and wasn't too impressed.  Looked like a drag and drop app maker for junior high kids.  I know that's probably not true and I wasn't viewing videos where they were doing a lot of actually coding, but didn't like the interface much at all.  I know that Apple tries to make it's products easy to use, but developers are a different breed and you need to cater to them as well.

 

Karsten - What do you use for iOS development?  Do you program in C++ for your apps?  I have experience in C++, but sounded like C# was the way to go for creating apps and games as a scripting language if I'm going to use an engine and C++ would be more for building a game completely from scratch (including building an engine).



#18 Karsten_   Members   -  Reputation: 1573

Like
0Likes
Like

Posted 03 February 2013 - 02:11 PM

rancineb,

I do pretty much all my development in a pretty common text editor (Vim) and then use Makefiles and xcodebuild on my Mac build server to generate the iOS packages.

I have found that C++ and OpenGL to be the easiest to work with for everything because of the simple fact that once you have a rendering context up and running, the rest of the code (pretty much 99.9%) can stay exactly the same for all platforms I have ever used (and probably ever will use).

If you do have your heart set on a specific games engine, then you probably are going to have to use the language that it requires. If you want to do 2D games then I highly suggest C++ and OpenGL and for 3D there are also loads of different libraries to load 3D models etc... that you can put together your own engine extremely easily.

Perhaps all I am saying is don't just jump onto C# because it is "what everyone else uses" because similar was done with VB6* back in the day and once Microsoft dropped it in favour of .NET. People lost a *LOT* of work. Portability and longevity of my code (and hard work) is king in my book!

* VB6 code is not at all compatible with VB.NET.

Mutiny - Open-source C++ Unity re-implementation.
Defile of Eden 2 - FreeBSD and OpenBSD binaries of our latest game.


#19 riverreal   Members   -  Reputation: 616

Like
0Likes
Like

Posted 03 February 2013 - 02:23 PM

I watched a couple videos of Xcode usage and wasn't too impressed.  Looked like a drag and drop app maker for junior high kids.  I know that's probably not true and I wasn't viewing videos where they were doing a lot of actually coding, but didn't like the interface much at all.  I know that Apple tries to make it's products easy to use, but developers are a different breed and you need to cater to them as well.

 

Karsten - What do you use for iOS development?  Do you program in C++ for your apps?  I have experience in C++, but sounded like C# was the way to go for creating apps and games as a scripting language if I'm going to use an engine and C++ would be more for building a game completely from scratch (including building an engine).

 

That's true, C++ is a very complex language that lets the programmer to involve different aspects for the program.

But you need to choose a language that you are adapted. If you feel comfortable with it just use it.

 

By the way, Karten_, Is OpenGL very different from OpenGL ES? 

Thanks in advance



#20 Serapth   Crossbones+   -  Reputation: 5314

Like
0Likes
Like

Posted 03 February 2013 - 02:46 PM

rancineb,

I do pretty much all my development in a pretty common text editor (Vim) and then use Makefiles and xcodebuild on my Mac build server to generate the iOS packages.

I have found that C++ and OpenGL to be the easiest to work with for everything because of the simple fact that once you have a rendering context up and running, the rest of the code (pretty much 99.9%) can stay exactly the same for all platforms I have ever used (and probably ever will use).

If you do have your heart set on a specific games engine, then you probably are going to have to use the language that it requires. If you want to do 2D games then I highly suggest C++ and OpenGL and for 3D there are also loads of different libraries to load 3D models etc... that you can put together your own engine extremely easily.

Perhaps all I am saying is don't just jump onto C# because it is "what everyone else uses" because similar was done with VB6* back in the day and once Microsoft dropped it in favour of .NET. People lost a *LOT* of work. Portability and longevity of my code (and hard work) is king in my book!

* VB6 code is not at all compatible with VB.NET.

 

 

That is a load of bunk.  Visual Studio 6 was released in 1998 and discontinued support in 2008!  That is, stopped formally supporting/patching/updating the product.  10 years!  There are hundreds of millions of lines of VB code running to this day.  Hell, there are probably still millions of people writing VB6 code at this point.  I am no fan of the language, but then, I wasn't the target demographic.

 

Also, unlike VB6, C# is an ECMA standards based language... if Microsoft went away tomorrow, it would live on in the form of Mono.  This sounds like fanboi rubbish you would hear on Slashdot 4 years ago, not the type of stuff discussed here.  Then again, anti-IDE I'm a Vim/Makefile guy sounds very Slashdot too...


Edited by Serapth, 03 February 2013 - 02:48 PM.





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS