How do I Become an iOS Developer?
This lesson explains the basic steps you need to follow in order to start up as an iOS developer and deploy your applications to an iOS device. System configuration information and screen captures are provided.
Introduction
The steps discussed in this lesson outline a process that allows you to set yourself up as a LiveCode developer for the iOS platform and successfully build and deploy test applications. The steps are set out in chronological order, first determining the hardware and software requirements, and then setting up your system. Please note that you cannot deploy for iOS from Windows, you must have a Mac to do this. Apple do not offer an SDK to deploy from Windows.
The lesson focuses primarily on integrating the apple iOS components with LiveCode. You can find extensive documentation on setting up your Mac for iOS development at: https://developer.apple.com/programs/enroll/
If you have already set your Mac up for iOS development and are ready to start creating your applications, you can move on to lesson: How do I build an iOS application?
Software Requirements
The iOS SDKS come as part of the Xcode app bundle. In order to build iOS apps in LiveCode, you must be using an appropriate version of the Mac operating system running on the intel architecture .You can determine what operating system you have installed and the hardware platform you are using by selecting Apple > About This Mac from the top of your screen:
1. This indicates the operating system you are using.
2. This indicates the hardware architecture of your Central Processing Unit (CPU). You should be looking for the word Intel.
Note: It is assumed that you are familiar with the installation process of an Apple operating system and LiveCode. Please make sure these are installed before you commence with the remaining steps of this lesson.
Joining the iOS Developer Program
Before you can continue with the installation, it is advisable that you join Apples iOS Developer Program. You can join by following this link: https://developer.apple.com/programs/enroll/. It is free to sign up and no payment is currently required if you are testing via the iOS simulator but is subscription based if you plan on testing your applications on physical devices.
Once you have signed up to the Apple iOS Developer Program, you can go to the iOS Developer Portal and set up the required certificates (link is on the top-right of the page). Follow this guide for information on the process: Maintain Signing Identities and Certificates
Downloading and installing the iOS SDK
If you do not have the iOS SDK installed, then you can download it from the Mac App Store. (1)
Alternatively, you can download older revisions of Xcode via the "Downloads" section of your Apple Developer Account-
https://developer.apple.com/devcenter/ios/index.action#downloads
Configuring LiveCode for iOS Support
By now, you should have successfully installed the required software in your development environment. The next step is to launch LiveCode and configure it to interface with the iOS SDK.
Launch the LiveCode IDE and select LiveCode > Preferences to launch the Preferences menu. Then select Mobile Support and you are presented with the dialog shown in this step.
When you select "Add Entry", you will be prompted as to whether your installed version of Xcode is "4.2 or earlier" or "4.3 or later" - If you are using the latest versions of Xcode, you will want to select the later. You will then need to supply the location of your Xcode application bundle (for example, /Applications/Xcode). The rest of the filepath will automatically be populated for you.
Validation checks are made once you specify the location of the iOS paths. This ensures that you have selected a valid location and have the require iOS components installed.
Important note: you need to ensure you have matched the correct version of Xcode to the version of LiveCode you are using. For a useful table showing what version works with which edition, go to https://livecode.com/resources/support/ask-a-question/ and scroll down to the FAQ "What iOS/Xcode version matches which version of LiveCode?"
The Standalone Application Settings... Window
Select File > Standalone Application Settings... from the LiveCode IDE. Then choose iOS from the list of deployment options. This raises the Standalone Application Settings dialog for iOS specific builds.
You can make a stack build for iOS by selecting the Build for iOS tick box and configure any other options you wish to include. You can select the name of your application by using the General option at the top of the pane and add files to your build by using the CopyFiles option at the top of the pane.
Note: Making a stack build for iOS disables building standalone mainstacks for any other non-mobile platforms.
Note: Inclusions, Copy Referenced Files, Bug Reports and Stacks features are not available when building for iOS. Use the CopyFiles feature if you wish to include multiple stack files in your application.
Running Under iOS
You should now have set up your development environment for iOS and are ready to test a LiveCode application in simulation or on a physical device, if you paid a subscription.
Select the a simulator from the LiveCode IDE from Development > Test Target. Your Test icon on the main pane of the LiveCode IDE should now be active and will allow you to deploy your LiveCode application to iOS.
In order to run an application on a physical device, you need to build a standalone app and load this onto your device using the Organizer window of xCode.
Further Reading
Depending on how experienced you are with LiveCode, you may want to review more of the numerous lessons and tutorials we have on developing for Android, iOS and broader lessons that explore the general concepts behind LiveCode. The release notes accompanying LiveCode releases with iOS platform support provide up to date development information and give you an overview over the features that you can access via Live Code.
The following lesson shows you how to test an application on the simulator: How do I build an iOS application?
Matthew
I had to pay a yearly amount to become a SDK developer. Above, you mention that it is free. Did I go to the wrong site and pay unnecessarily? Thanks!
Elanor Buchanan
Hi Matthew
There is a free Apple Developer Program you can join but it only allows you to run your apps in the simulator, not deploy them to a real device or put them in the App Store. For this you do need to join the paid for program.
The free program is mentioned at the bottom of this page
http://developer.apple.com/programs/which-program/
I hope that helps.
Kind regards
Elanor
S.Shankar
LiveCode is not just simple, amazing and elegant...but is unbelievably the next big wave in apps development. I had no experience whatsoever in apps development or high lever coding...but with LiveCode, I am confident that I would deploy my app on the app store in the nearest future :)
Kudos LiveCode !!!
Aaron
Becoming an ios developer is it only for mac users?
Ben Beaumont
Hi Aaron,
iOS development is restricted to the Mac. Apple don't provide xCode or the iOS simulator for any other platform so unfortunately we can't either.
I hope that help.
Warm regards,
Ben
Dan
When I am at the Standalone App Settings window there is (none) on the Profile setting. How do I add a profile?
Hanson Schmidt-Cornelius
Hi Dan,
the Provisioning Profile comes from apple. You can obtain this by following the link at the top of the lesson to apple's website. From there, create an account for yourself or log into an existing one if you already have one. Then navigate to the iOS Provisioning Portal to create a Provisioning Profile.
Thanks,
Hanson
Karen DeCrane
I notice that there is a new Xcode version 4 for Lion. Will there be any issues to using the older Xcode 3 on a Snow Leopard system?
Also do I need two copies of Live Code if I want to develop on my Mac and also work on my PC? I'm thinking I would as there is no way to develop for iOS on a PC. Can I develop for Android using Live Code running on a Mac?
Hanson Schmidt-Cornelius
Hi Karen,
although the development environment differs somewhat between Xcode 3.x and 4, people are using Xcode 4 on Lion to deploy LiveCode applications to their devices. I am not aware of any major issues when migrating.
Check out this lesson for becoming an Android developer on a Mac:
http://lessons.runrev.com/s/lessons/m/4069/l/27389-How-do-I-Become-an-Android-Developer-on-a-Mac-
Kind Regards,
Hanson
Roseann
Is there an iOS simulator that can run on a Windows machine. That is all I have right now.
Thank You.
Hanson Schmidt-Cornelius
Hi Roseann,
I am sorry, but you would have to use an apple development environment if you want to use the iOS simulator.
Kind Regards,
Hanson
Tiago
Hello,
Do I need to have a Mac to become an iOS Developer?
I mean, I don´t have a Mac, but an iPhone, but can I develop with this software under Windows OS?
Best regards,
Tiago
Hanson Schmidt-Cornelius
Hi Tiago,
Apple provide xCode and the iOS simulator that only run on an apple operating system.
LiveCode hooks into these components, allowing you to develop for the iOS platform.
So yes, in order to develop for iOS in LiveCode you will need an apple Mac with xCode and the iOS simulator installed.
Kind Regards,
Hanson
Graham Samuel
As a long-term user of LiveCode in a desktop environment, I'm finding it hard to get started with iOS for non-technical reasons to do with licensing and provisioning profiles (from Apple). Can RunRev consider helping people like me by explaining how this Apple system works, what is needed and what isn't? For example, I believe I can experiment just using the simulator without having all the Apple stuff I would need if I were to test on a real device and/or try to publish an app. Maybe I missed it, but I would really like this lesson to include more about this topic so I can just get to grips with actual development!
Hanson Schmidt-Cornelius
Hi Graham,
the initial set up for iOS development can be time consuming and often requires several attempts and trials before everything is working properly. The steps outlined in the iOS Developers Portal cover what you need to set up the certificates for iOS and this lesson provides the additional information you need for LiveCode to work with parts of the iOS Apple development environment.
There is certainly a learning curve involved in setting up for iOS development.
We have written a number of lessons that lead you through key areas of integrating LiveCode with iOS, the distribution and submission process.
You can find relevant information in the following lessons:
http://lessons.runrev.com/s/lessons/m/4069/l/32957-how-do-i-create-a-distribution-profile-for-ios
http://lessons.runrev.com/s/lessons/m/4069/l/33064-how-do-i-submit-an-ios-app-to-the-app-store
http://lessons.runrev.com/s/lessons/m/4069/l/33065-how-do-i-set-up-an-app-for-submission-to-itunes-connect
I hope this information is helpful for your set up process.
Kind Regards,
Hanson
Andrew G
Hi I have difficulty configuring the iOS SDK for LiveCode. My Xcode is 4.2.1 and my iOS simulator is 5.0. However, when I was trying to put in the location of developer root for iOS 5.0 and above and I choose iOS Simulator inside the /Developer/Platforms/iPhoneSimulator.platform/Developer/Applications I got this error message: "The chosen folder is not a valid iOS SDK for 5.0 and later. It must be one that ships with XCode 4.2 or later." What did I do wrong?
Thanks
Andrew
Hanson Schmidt-Cornelius
Hi Andrew,
judging by the path you have specified, you are looking too deep into the development environment. Instead of using path: "/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications", try using: "/Developer". It looks like this could be your developer root directory.
Kind Regards,
Hanson
vinodh pemmasani
hello sir, i have dell inspiron labtop having configaration i3 processor,4gb ram and 500 gb hd.Its possible to install mac os in my labtop please any one give me answer,Thanks in advance.
Hanson Schmidt-Cornelius
Hi Vinodh,
in order to run a Mac OS you have to use Apple hardware. Mac OSX is not designed to work on anything other than a Mac. Also note that later versions of OSX should only be run on Intel based Macs.
Kind Regards,
Hanson
Sean
Greetings
I was curious if I needed to be proficient in another coding language in order to learn iOS SDK to create apps for the IPAD? Any information would be greatly appreciated
Hanson Schmidt-Cornelius
Hi Sean,
it depends entirely what kind of applications you would like to implement.
The iOS SDK is not a programming language as such, but more of a development environment that supports the programming language Objective-C. LiveCode interfaces with the iOS SDK, allowing you to write applications for iPad in LiveCode. You can write a whole range of applications in LiveCode without even looking at Objective-C.
LiveCode also supports the notion of externals, allowing you to write Objective-C code that can be linked into LiveCode for iPad deployment. Here is a relevant link:
http://www.runrev.com/developers/documentation/externals-sdk/
Kind Regards,
Hanson
Maalona
Hi there livecode team,
I've just stumbled across your amazing product and it looks great! I am new to any sort of development but am very keen and excited to learn about it all. I've recently picked up a few books on beginning objective-c programming but after seeing what live code offers, am wondering what the benefits of me learning objective-c are now, given that livecode would allow me to accomplish tasks much faster. Would learning objective-c along with the livecode sdk be a good investment? I would like to develop in the long run so perhaps it would be, but would love to hear the opinions of professionals who are actually in the field. I have learnt a bit of Java and Python this year at uni so I'm not completely new to programming, but I've just never made any applications.
I look forward to your response and am excited to get learning using livecode.
Kind regards,
Maalona.
Hanson Schmidt-Cornelius
Hi Maalona,
let me first point you to a page with a few videos that promote our product. This provides you with some background information: http://www.runrev.com/products/livecode/livecode-in-video-
If you develop in LiveCode, then you do not have to know objective-c in order to deploy apps to iOS devices. LiveCode is well rounded for developing to iOS and it covers most of the iOS features you may ever want to use.
If you do find an iOS feature that is not supported in LiveCode, then there is nothing stopping you from implementing that feature. LiveCode provides externals support that allows you to write custom objective-c code to be included in your LiveCode application.
Remember that in addition to deploying to iOS, LiveCode also allows you to deploy your software to a number of other platforms.
So if you are looking for a development environment that allows you to build applications in a short time for iOS, then LiveCode can fulfil that requirement. At the same time you are not restricting yourself from using objective-c, if you want to learn it in parallel or in the future.
Kind Regards,
Hanson
Vinay
I have an iPod 3rd generation.
- I guess I can use that instead of an iPhone emulator for the most part? The part it will not work is when the app needs geolocation, etc.
- I am considering using PhoneGap, so I can run the app on other platforms. I am hoping PhoneGap and iPod together would save me having to invest in a Mac.
Hanson Schmidt-Cornelius
Hi Vinay,
I am sorry, but I cannot give you any information on PhoneGap.
If you would like to develop mobile applications for iOS, then Apple requires that you develop these applications from an Apple platform. We do not bypass this Apple requirement, and you would have to develop an iOS application from LiveCode using an Apple Intel computer.
You can then deploy to the simulator or the physical device.
Kind Regards,
Hanson
Jack
I'm having trouble testing the app on iOS device. I've been using LiveCode and the Xcode simulator for a few weeks now and have had no trouble running in the simulator. I recently got a provisioning profile and set up Xcode. I ran a simple HelloWorld app on iOS from Xcode with no problem.
Now I'm trying to use LiveCode with the provisioning profile and test on the iOS device. I believe I have the "stand alone setup" setting correct, but I don't see my device when I go to Development>TestTarget in LiveCode. There is something wrong...
LiveCode 5.5.0
Xcode 4.4
Thanks!
Jack
Hanson Schmidt-Cornelius
Hi Jack,
in order to run an iOS app on a device, you need to load the file through Xcode. Here are the steps:
1. Write your LiveCode application and set it up for iOS device build.
2. Write your application bundle to disk using "File->Save as Standalone Application...".
3. Open Xcode and select "Window->Organizer" to open the "Organizer - Devices" window.
4. Select the "Applications" item of the device onto which to load the application.
5. Open a Finder window and navigate to the location where you saved your application.
6. Drag and drop the *.app file into the Xcode window that contains the applications of your device.
You should now be able to see the application on your device.
Kind Regards,
Hanson
Jack
Dear Hanson,
You guys and girls are great! I've been in the 8bit arena for a decade, building hundreds of embedded systems for prototype toys. Object oriented programming is not my thing but LiveCode is the simplest and quickest way to develop and demo concepts. Thank you!
John
Hi. I must have missed something setting up LiveCode 5.5.3 to work with my Xcode environment, but I can't get the PLAY/TEST icon to get enabled for my iOS deployment. The LiveCode->Preferences->Mobile Support shows my 2 Xcode app bundles(vs4.3.2,vs4.5) locations, with SDKs 5.1,6.0 available and simulators 4.3,5.0,5.1,6.0 available (I have a green box on the panel). I'm trying biz academy video tutorial #5 and have the iOS box checked for App Settings. I've saved everything and even shutdown LiveCode a few times to see if anything had to be restarted. But still no luck. Any pointers would be highly appreciated.
Thanks! (FYI: also running mac os x 10.7.5 if that helps).
Hanson Schmidt-Cornelius
Hi John,
there could be a number of reasons for this. The "Test" button becomes active if you have set up the stack for iOS deployment and selected the right test target.
Have a look at this lesson for more information on this topic: http://lessons.runrev.com/s/lessons/m/4069/l/23075
Kind Regards,
Hanson
John
Thanks for the pointer, Hanson. I still had the same problem with that lesson, though. However, after looking around the options on LiveCode, it turns out I did miss something important. I never selected a target platform at the top via Development-->Test Target. Duh. (though it may be worth mentioning it in the tutorials related to mobile for folks like me rushing through the videos :)
Again, thanks.
Hanson Schmidt-Cornelius
Hi John,
great you managed to get it running. Thanks for the feedback.
Kind Regards,
Hanson
DamonRobertson
I have been unable to locate any kind of free membership as mentioned in this article for the apple developer program. Is there something I'm doing wrong?
DamonRobertson
keeps displaying an error saying that livecode cannot locate the sdk. i'm not sure what i've done wrong here but could use some help to get things working.
Hanson Schmidt-Cornelius
Hi Damon,
The Apple Developer Program gives you access to development resources and allows you to deploy iOS applications to the simulator only.
There is more information on developer programs here: https://developer.apple.com/programs/which-program/
Scroll to the bottom of the page to register as an "Apple Developer".
Here is a quote from an Apple page with more information on the particular program (http://developer.apple.com/library/ios/#documentation/Xcode/Conceptual/ios_development_workflow/10-Configuring_Development_and_Distribution_Assets/identities_and_devices.html):
"As a registered Apple developer, you have access to iOS developer documentation and can build iOS apps that run in simulators. ... Being a registered Apple developer, however, doesn’t allow you to run apps on iOS devices. To do so you must also be a member of a development team."
Kind Regards,
Hanson
Hanson Schmidt-Cornelius
Hi Damon,
there are a number of aspects to consider when setting up for iOS deployment, depending on what version of XCode you have installed and the iOS version you are deploying to. I would test the following two steps and ensure that each item has been addressed:
1. Make sure that the appropriate iOS SDKs have been set up in the LiveCode Mobile Support options. You need to select the appropriate XCode.app bundles here. Depending on the versions of iOS you would like to test, it may be necessary to install more than one version of XCode. The window will also indicate what versions of iOS are supported by the SDKs that have been linked in. This is covered in the section "Configuring LiveCode for iOS Support".
2. Make sure that the standalone application settings for your iOS application are correct, as described under section "Standalone Applications Settings... Window". Also ensure that you are targeting the range of iOS versions that were shown as being supported when linking in the SDKs.
Hope this helps.
Kind Regards,
Hanson
emo
Hi,
I have xcode 4.6.1
Trial version of Livecode
In preferences->movile i can't choose the path to the xcode, it says "The choosen folder is not a valid IOS SDk"
my xcode is in Applications folder
thank's im advance
Hanson Schmidt-Cornelius
Hi Emo,
even though you have a trial version, you should have no problem adding the relevant Xcode paths. If you used the default installation, then your Xcode installation is probably located here: /Applications/Xcode.app
Try to include that file. This should give you the following path in your "Preferences -> Mobile Support" list: /Applications/Xcode.app/Contents/Developer
Kind Regards,
Hanson
sf-in-sf
That's hilarious on this page:
"...on the main pain of the LiveCode IDE..."
You certainly mean the main PANE.
Thanks for the fun, it's very cool!
Hanson Schmidt-Cornelius
Hey sf-in-sf,
thanks for pointing that out. - Fixed.
You know there is not gain without pain. Sure that must have been intentional when it was originally written.
Kind Regards,
Hanson
nanu
The installation procedure differs slightly depending on whether you are using Xcode version 4.3 and above, or an older version. If using version 4.3 or higher of Xcode, you can install using the Mac App Store. You can also download a .dmg file directly from the Apple Developer Center, in this case you simply mount the .dmg file as soon as it has finished downloading, and drag the contents into your Applications folder. Open Xcode once it is installed to ensure that everything is correctly installed - you may be prompted to install additional pieces of functionality.
If using an older version of Xcode, once you have downloaded the iOS SDK, execute it and follow the steps that lead you through the installation process. The installation should leave you with a /Developer folder in the root of your system disk. Inside here are the various libraries and applications needed for iOS development.
For Xcode 4.3, the iOS simulator is located inside the Xcode application bundle, in /path/to/Xcode/Content/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications. To open the Xcode application bundle, right click on it and select "Show Package Contents". For older versions, the iOS simulator is installed in /Developer/Platforms/iPhoneSimulator.platform/Developer/Applications, by default. You can launch it by double-clicking on the application icon.
FAISAL
Hi, do i need to have a background in any sort of programming certificates such as C++ ?
Hanson Schmidt-Cornelius
Hi Faisal,
C/C++ and LiveCode operate fundamentally quite differently, so I am not sure how much of a benefit it would be to know such a programming language in advance.
LiveCode is based on the English language and uses logical constructs that you would find in that language.
We provide a lot of information on our website that helps you learn LiveCode with much of it developed for new programmers who have no prior programming experience.
Kind Regards,
Hanson
Sienna Amelia
Hi
This article helps me a lot to know about iOS development, What is needed before to setting up an environment to develop apps. Is iPhone apps not possible on windows machine? DO we need Mac OS for sure?
http://stackoverflow.com/questions/22358/how-can-i-develop-for-iphone-using-a-windows-development-machine/19514690#19514690
Share your views, to strengthen nerds.
Hanson Schmidt-Cornelius
Hello Sienna,
we develop for iOS on genuine Apple machines as this is the most common and easiest approach to take.
We have not reviewed options for development from other hardware architectures, and parts of the iOS build options are grayed out when using LiveCode under Windows. This is because we do not have iOS engines that allow iOS apps to be built from Windows.
If you are planning to run an apple operating system on a hardware architecture that does not come from apple, then I suggest contacting apple first to ensure the appropriate licensing conditions are met.
Kind Regards,
Hanson
Mark
Towards the end of the article, it says "Select the a [sic] simulator or device from the LiveCode IDE from Development > Test Target."
I have a problem with the "or device" bit as I cannot see a device listed in Test Target - only simulator options - although an iOS device is connected and visible in Xcode.
Please advise.
Hanson Schmidt-Cornelius
Hello Mark,
that appears to be a documentation error. It has now been addressed.
Unfortunately it is not quite that simple to load an application onto an iOS device. You need to load the app manually. The lesson pointed to in the further reading provides information on loading an application onto a device, but I have included a link to the lesson here too: http://lessons.runrev.com/s/lessons/m/4069/l/23075
Kind Regards,
Hanson
Mark
Thanks Hanson - that explains things.
But am I correct in understanding that the mobile commands to display native iOS controls (e.g. mobilePick, mobilePickDate) do not work in the simulator?
Best regards
Mark
(NB: It still says "the a".}
Hanson Schmidt-Cornelius
Hi Mark,
some commands, for example access to particular sensors, such as the camera, compass, should not work in the simulator. "mobilePick" and "mobilePickDate" should work on both the simulator and the device.
Kind Regards,
Hanson
Elliot
Hi
I am new to this LiveCode and I want to develop for iOS. I am running a Win10, intel core i7 processor, 16gb RAM, 3.2GHz. Will it be possible for me to code for iOS?
Russell
RE: "In order to run an application on a physical device, you need to build a standalone app and load this onto your device using the Organizer window of xCode." It is most important to make sure that you are using a "Developer Certificate" to create a "Developer Provisioning Profile" to make an app that will load on an individual iPhone/iPad. If, like us, you try using a "Distribution Certificate" to create a "Distribution Provisioning Profile" this will not load on the iPhone/iPad and you could waste a lot of time wondering why. Furthermore, doubleclicking on the downloaded "Developer Provisioning Profile" does not load the Xcode Organizer any more. The way to tell if it has installed is to doubleclick on the downloaded "Developer Provisioning Profile" file and then in Livecode go to File - Standalone Applications Settings - iOS - Basic Application Settings - "Profile" drop down. Hopefully you will see the name you gave the "Developer Provisioning Profile" there.