iPhone is one of the hot topics in the mobile industry these days. To compete with the fame of iPhone, we have Android in the market too. Since iPhone is so much popular, everyone tries to write their own application for the iPhone. Although this can be done in Mac OSX using the iPhone SDK, people face a lot of challenges when they try to do the same on Windows or Linux platforms. Let’s have a brief look at the approach that should be followed in order to successfully start developing iPhone applications in Linux. Since there can be many ways of achieving the same result of successful iPhone application development, the following method is just one way of doing it.
Image Source: Source: http://commons.wikimedia.org/wiki/File:Chord_Board_iPhone_App._chords_screen.png
In order to develop iPhone applications, you need iPhone SDK. Of course it is available to download free of charge from Apple, but it only supports Mac platform. So how do others (Windows and Linux folks) develop iPhone applications? This article is all about finding out answers for this question.
iPhone SDK is a powerful platform which consists of a number of useful tools for developing iPhone applications. Since this collection of tools is integrated with one another, developing an alternative iPhone SDK which runs on Linux is out of the question. So, let’s see how we can make use of iPhone SDK in Linux in order to achieve what we want.
First of all, you need know Objective-C in order to progress. Xcode is mainly written in Objective-C and you need to know this language in order to understand how iPhone SDK works. Since running iPhone SDK on Linux is almost impossible, we will need a comprehensive documentation on iPhone SDK. We will not use iPhone SDK for developing applications, but the documentation.
There are two approaches for developing iPhone applications in Linux. The first one is a straightforward approach for development. Eclipse is one of the cross platform software development frameworks that can be used for iPhone application development as well. Someone has written a plugin for Eclipse in order to make this effort easier, so you can directly write iPhone application code in Eclipse. For this method, you will need an iPhone attached to the PC, in order to test the code you write. There are many people following this method of iPhone application development with their own success rates. There are many technical challenges in this method, but it seems, there are people who have achieved a significant level of success in app development.
The second approach to develop iPhone applications is quite a raw technical approach. In this method, the application is developed in the iPhone device itself and a terminal session through SSH is made into the device. So, the developer can use the Linux terminal for programming purposes, but the actual development happens inside the iPhone device. In this method, you only need to establish a connection with the device, so you can transfer files (source, header, and compiled) between your Linux box and iPhone device.
In both the methods, the application developer needs to have extensive knowledge of SDK documentation as there are no SDK tools available, but only the information about SDK. Due to the nature of approach, it takes relatively a longer period to develop even a simple application through these methods. Through this approach, you get no GUI for development environment and no Xcode support as well.
Since developing iPhone applications on Linux is all isolated and individual efforts, you do not find organized information on the Internet related this matter. Therefore, you may have to rely on individual experiences and opinions when it comes to learning iPhone app development. Although this is not an effective way of learning something like this, it is the only way, at least for now.
Author: Nilanka