Hey there fellow App Creators! I am new here, and would like to learn the ropes of the trade. i look forward to getting around to knowing everyone, and learning almost everything that can be taught. I’m like a said, new to this whole concept. So if anyone can help me, reply! Or shoot me an email at exohunter99@gmail.com
I am new here and I feel overwhelmed on how to build mobile apps. The past two weeks I have been watching youtube videos, reading forums, reading documents, download trials and I am confused. I even had to post on someone else’ topic here because even though I’m logged in I cant find the but to post my own topic.
I would like to build multi platform mobile apps. My questions are simple and if someone would allow me to do a skype with them to just ask them questions so I cant get my bearings I would be most appreciative.
- What is a native app?
- What is the different and pros and cons of build a native app vs html5?
- What is the best set of tools or should I say most user friendly set of tools to build in?
- I’ve downloaded xcode, codiqa, phonegap and I am confused. I dont understand why I need to use all these apps and in what order or what purpose each one. I used to building in dreamweaver or notepad for html and I understand what the tools are for in that context. I’m completely turned upside-down for mobile app dev.
- Would anyone be willing to take 20-30 minutes to speak with me so I can understand the lay of the land?
Regards
Marc
First to create a new forum post you have to be at the forum level. For instance, while reading this thread, there is no “Start New Topic” button, but if you are at the forum level where you can see all the topics for that forum such as:
http://forums.coronalabs.com/forum/532-newbie-questions/
You will see a bright orange “Start new Topic” button at the top right of the screen.
On to your questions:
- What is a native app?
There are two definitions for this. The first, more generic definition is a compiled, binary application designed to run in the operating system for the device in question. For instance, for Apple IOS, these apps would be built following Apple’s executable program standards and installed on the device. These apps are typically built using Objective C and go through quite a bit of setup to happen. For Google’s Android, its the same idea, but they are built using Java (not JavaScript). There are some tools or frameworks, like Corona SDK (where you’re asking this question) that use an intermediate language, like in our case Lua to build native apps. A non-native app would be an app constructed in HTML (most likely HTML5) and designed to look and behave like a native app, but it requires the device’s web browser to actually run.
Here a Corona SDK because you build your app without using the normal “native” languages (Objective C, Java), we refer to “Native” as things that have to happen using Apple or Google’s tools.
- What are the pros and cons to a native app vs. HTML5 apps?
Native apps are delivered to the user from the device’s App store. iPhone owners can go to their iTunes app and install these native apps directly to their device. Android users would use the Google Play store. Native apps being compiled programs tend to run smoother, have access to device features, like the GPS, the accelerometer, etc. Be able to do In-App purcahses, etc. They have access to a greater range of features they can be built with. Some native app can do what they need to do without a connection to the Internet.
HTML5 apps on the other hand can be easily built without having to know much about mobile app development. All you need is HTML, JavaScript and CSS and you can give the URL to a user, they hit it with their web browser and they are running your HTML5 app. You don’t have to deal with any app store distribution rules. You don’t have to join the Apple or Google developer programs (or Amazon, you can deploy apps there as well). Native apps require a complex setup of signing certificates, keys, provisioning profiles, or in Android’s case, keystores, to deal with. Native apps have a considerable overhead in new terminology that you need in addition to having to know how to program in some other programming language.
- What’s the best set of tools (or most user friendly tools) to build in?
Well, it depends on what you’re trying to do with your app. For instance, Corona SDK is a great frame work for games and interactive apps. Lua, the language is easy to learn. The API calls to do things in Corona SDK (draw a button, put an image on the screen, move it around) are really easy to learn as well. There are some things that Corona SDK can do but may not be the best or easiest at. The best way to try and describe this is to go to the HTML vs. Flash analogy. When Flash was the hot thing for web browsers you could do all kinds of cool, powerful and innovative things with it. But if you wanted to setup a form, it was sometimes better to do that in HTML. There will be somethings that Corona can do for you like put an interactive map on the screen, but if you want to build a full featured map app, you may find it better to do in Objective C or Java outside of Corona SDK.
- Xcode codiqa, phone gap? you’re confused…
Let me start with Phonegap. Phonegap is a framework like Corona SDK. It allows you to take an HTML5 app, complete with JavaScript and CSS and it allows you to build a native app with it. I’m pretty sure they have an Android version. I know they have an Apple iOS version. You still need the native tools like Xcode to build the native app, but at least you’re coding and building in HTML technologies. They have built in some binding that let you get to native features like the GPS. I’ve never heard of codiqa before, but a quick glance at their website, it seems similar to Phonegap, perhaps easier to use. I don’t want to say much more about it since I know nothing more than what the first page of their website says.
Hopefully this will answer your questions.
Rob
So what you’re saying is depending on what the app needs to do will determined the tool or tools you use? SO there is no silver bullet here correct. There is an arsenal of tool that will be used for mobile app dev correct?
For iOS apps, people use Objective-C (or Swift) to build apps in XCode (an IDE).
You can simply go to Apple developer website to get all the information.
Other than that, all you have seen (such as PhoneGap (use HTML 5), CoronaSDK, etc.) are tools/libraries/SDKs to “help” you to build apps. They are there to help, that’s it. You don’t need to use them if you don’t need the help (because there will be tradeoffs). A lot of people build apps without these tools. And they all have different pros and cons, so there is no certain way to tell which is the best. It all depends on your situation.
There are plenty of options for building mobile apps. Some will be more friendly than others. Some will be more rich in features, others less. No one frame work will be perfect for everything you might want to do.
Rob
I am new here and I feel overwhelmed on how to build mobile apps. The past two weeks I have been watching youtube videos, reading forums, reading documents, download trials and I am confused. I even had to post on someone else’ topic here because even though I’m logged in I cant find the but to post my own topic.
I would like to build multi platform mobile apps. My questions are simple and if someone would allow me to do a skype with them to just ask them questions so I cant get my bearings I would be most appreciative.
- What is a native app?
- What is the different and pros and cons of build a native app vs html5?
- What is the best set of tools or should I say most user friendly set of tools to build in?
- I’ve downloaded xcode, codiqa, phonegap and I am confused. I dont understand why I need to use all these apps and in what order or what purpose each one. I used to building in dreamweaver or notepad for html and I understand what the tools are for in that context. I’m completely turned upside-down for mobile app dev.
- Would anyone be willing to take 20-30 minutes to speak with me so I can understand the lay of the land?
Regards
Marc
First to create a new forum post you have to be at the forum level. For instance, while reading this thread, there is no “Start New Topic” button, but if you are at the forum level where you can see all the topics for that forum such as:
http://forums.coronalabs.com/forum/532-newbie-questions/
You will see a bright orange “Start new Topic” button at the top right of the screen.
On to your questions:
- What is a native app?
There are two definitions for this. The first, more generic definition is a compiled, binary application designed to run in the operating system for the device in question. For instance, for Apple IOS, these apps would be built following Apple’s executable program standards and installed on the device. These apps are typically built using Objective C and go through quite a bit of setup to happen. For Google’s Android, its the same idea, but they are built using Java (not JavaScript). There are some tools or frameworks, like Corona SDK (where you’re asking this question) that use an intermediate language, like in our case Lua to build native apps. A non-native app would be an app constructed in HTML (most likely HTML5) and designed to look and behave like a native app, but it requires the device’s web browser to actually run.
Here a Corona SDK because you build your app without using the normal “native” languages (Objective C, Java), we refer to “Native” as things that have to happen using Apple or Google’s tools.
- What are the pros and cons to a native app vs. HTML5 apps?
Native apps are delivered to the user from the device’s App store. iPhone owners can go to their iTunes app and install these native apps directly to their device. Android users would use the Google Play store. Native apps being compiled programs tend to run smoother, have access to device features, like the GPS, the accelerometer, etc. Be able to do In-App purcahses, etc. They have access to a greater range of features they can be built with. Some native app can do what they need to do without a connection to the Internet.
HTML5 apps on the other hand can be easily built without having to know much about mobile app development. All you need is HTML, JavaScript and CSS and you can give the URL to a user, they hit it with their web browser and they are running your HTML5 app. You don’t have to deal with any app store distribution rules. You don’t have to join the Apple or Google developer programs (or Amazon, you can deploy apps there as well). Native apps require a complex setup of signing certificates, keys, provisioning profiles, or in Android’s case, keystores, to deal with. Native apps have a considerable overhead in new terminology that you need in addition to having to know how to program in some other programming language.
- What’s the best set of tools (or most user friendly tools) to build in?
Well, it depends on what you’re trying to do with your app. For instance, Corona SDK is a great frame work for games and interactive apps. Lua, the language is easy to learn. The API calls to do things in Corona SDK (draw a button, put an image on the screen, move it around) are really easy to learn as well. There are some things that Corona SDK can do but may not be the best or easiest at. The best way to try and describe this is to go to the HTML vs. Flash analogy. When Flash was the hot thing for web browsers you could do all kinds of cool, powerful and innovative things with it. But if you wanted to setup a form, it was sometimes better to do that in HTML. There will be somethings that Corona can do for you like put an interactive map on the screen, but if you want to build a full featured map app, you may find it better to do in Objective C or Java outside of Corona SDK.
- Xcode codiqa, phone gap? you’re confused…
Let me start with Phonegap. Phonegap is a framework like Corona SDK. It allows you to take an HTML5 app, complete with JavaScript and CSS and it allows you to build a native app with it. I’m pretty sure they have an Android version. I know they have an Apple iOS version. You still need the native tools like Xcode to build the native app, but at least you’re coding and building in HTML technologies. They have built in some binding that let you get to native features like the GPS. I’ve never heard of codiqa before, but a quick glance at their website, it seems similar to Phonegap, perhaps easier to use. I don’t want to say much more about it since I know nothing more than what the first page of their website says.
Hopefully this will answer your questions.
Rob
So what you’re saying is depending on what the app needs to do will determined the tool or tools you use? SO there is no silver bullet here correct. There is an arsenal of tool that will be used for mobile app dev correct?
For iOS apps, people use Objective-C (or Swift) to build apps in XCode (an IDE).
You can simply go to Apple developer website to get all the information.
Other than that, all you have seen (such as PhoneGap (use HTML 5), CoronaSDK, etc.) are tools/libraries/SDKs to “help” you to build apps. They are there to help, that’s it. You don’t need to use them if you don’t need the help (because there will be tradeoffs). A lot of people build apps without these tools. And they all have different pros and cons, so there is no certain way to tell which is the best. It all depends on your situation.
There are plenty of options for building mobile apps. Some will be more friendly than others. Some will be more rich in features, others less. No one frame work will be perfect for everything you might want to do.
Rob