<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:series="http://unfoldingneurons.com/"
	>

<channel>
	<title>Xoriant Software Product Engineering Blog &#187; iPhone</title>
	<atom:link href="http://www.xoriant.com/blog/tag/iphone/feed" rel="self" type="application/rss+xml" />
	<link>http://www.xoriant.com/blog</link>
	<description>Product Engineering Outsourcing, Tech Talk</description>
	<lastBuildDate>Tue, 01 Nov 2011 09:02:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>iPhone Development: Facts and Challenges</title>
		<link>http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html</link>
		<comments>http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html#comments</comments>
		<pubDate>Fri, 11 Dec 2009 11:37:43 +0000</pubDate>
		<dc:creator>xoriant</dc:creator>
				<category><![CDATA[Mobile Application Development]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[LBS]]></category>
		<category><![CDATA[Location Based Services]]></category>
		<category><![CDATA[Mobile development]]></category>
		<category><![CDATA[UI]]></category>

		<guid isPermaLink="false">http://www.xoriant.com/blog/?p=129</guid>
		<description><![CDATA[The speed with which mobile technology is evolving is beyond remarkable. So much, that you may in fact, be viewing this post on your mobile. Gone are the days when you would have a mobile phone solely for the purpose of connecting with your friends &#38; family. Now, you can connect with 300 million+ users [...]


Related posts:<ol><li><a href='http://www.xoriant.com/blog/mobile-application-development/saving-the-state-of-iphone-app.html' rel='bookmark' title='Permanent Link: Saving the state of an iPhone application'>Saving the state of an iPhone application</a> <small>This blog post covers how one can maintain state in an iPhone application. Everyday interactions with the environment require us to save some form of information or data either for immediate...</small></li>
<li><a href='http://www.xoriant.com/blog/mobile-application-development/blackberry-development-environment-and-installation.html' rel='bookmark' title='Permanent Link: BlackBerry Development Environment and Installation'>BlackBerry Development Environment and Installation</a> <small>In this blog post, we shall take a look at how to get started with programming for the BlackBerry device. We shall cover what the device is, give you an...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal"><span>The speed with which mobile technology is evolving is beyond remarkable. So much, that you may in fact, be viewing this post on your <strong>mobile</strong>. Gone are the days when you would have a mobile phone solely for the purpose of <em>connecting</em> with your friends &amp; family. Now, you can connect with 300 million+ users on <em>Facebook</em>, listen to the latest music from <em>Last.fm</em>, view videos on <em>YouTube</em> etc. all using your ‘handheld’ device. The list of can-do’s is endless. What goes on behind the scenes is the collaboration of developer minds, striving to stretch technology, constantly redefining benchmarks to create services &amp; applications that make life a whole lot easier.</span></p>
<p class="MsoNormal"><span>While the success of social networking is undeniable, lifestyle &amp; Location Based Services (LBS) have helped <em>users</em> to simplify their needs &amp; achieve them; locally &amp; globally. However, the process of satisfying user needs in a constantly changing environment requires a thoughtful understanding &amp; analysis of the changing trends which has been successfully catered to. There is no doubt that there exists a challenge of providing <em>quality</em> applications to a <em>variable</em> audience with <em>innumerable</em> preferences. We have accepted this challenge, acknowledged the pros &amp; cons &amp; delved into bringing out the best solutions.</span></p>
<p class="MsoNormal">The iPhone is known to deliver ‘eye candy’ experience with its UI, having the user to <em>touch</em> &amp; <em>pinch</em> to use applications. Having said that, many applications fail to utilize the potential of the iPhone, unable to handle development challenges. Given below is a little insight into some of these challenges.</p>
<p class="MsoNormal"><span>Developer’s Eye View: </span></p>
<ul type="disc">
<li class="MsoNormal">The      iPhone runs only one foreground application at a time, so launching any      other application requires terminating the currently running app.</li>
<li class="MsoNormal">Responding      to interruptions like incoming calls, messages etc. is important because if      the user decides to take a call or reply to an SMS message, the system      proceeds to terminate the application.</li>
<li class="MsoNormal">Low-memory      warnings are critical. If not enough memory is released &#8211; perhaps because      the application is leaking or still consuming too much memory &#8211; the system      may terminate the application.</li>
<li class="MsoNormal">Being      a <em>touch</em> driven device, the      controls of the application need to be placed with some thought.</li>
<li class="MsoNormal">The      iPhone screen is precious as it is <em>the      component</em> with which users interact. An application with a crowded      screen may deviate the user’s attention much like in a real life market      place.</li>
<li class="MsoNormal">An      applications UI view differs when the iPhone is held in <em>portrait</em> or <em>landscape</em> mode. Tap’s drags, and swipes are simple gestures,      typically involving only a single touch. Handling a touch event consisting      of two or more touches is a more complicated affair. In addition, the      iPhone generates motion events when users move the device in a certain      way, such as shaking it. It is necessary to prevent the application from      responding in an unexpected (and unwanted) manner in response to such      events</li>
</ul>
<p class="MsoNormal"><span>Now let’s take a look at how one can avoid getting into the possible sticky situations given above:</span></p>
<ul>
<li><span>It is imperative that an application should terminate as usual, saving any needed contextual information to return the user to the same place (if required) in the application upon next launch (or re-launch).</span></li>
<li><span>Adhering to Apple’s Human Interface Guidelines saves a lot of confusion &amp; gives well designed interfaces.</span></li>
<li><span><span>Handling events, implementing event cancellation etc. correctly, prevents the app from being left in an inconsistent state.</span></span></li>
</ul>
<p class="MsoNormal"><span>These &amp; many more underlying intricacies can very well determine the chances of an app being realized. Adapting to this one button device, we have delivered attractive, feature rich applications that meet App Store standards &amp; have satisfied users looking to be part of changing lifestyle trends.</span></p>
<p class="MsoNormal"><span>-Anup D&#8217;souza</span></p>
<div class="author_member_gravatar_pic" style="display:block;">
			   <a class="author_member_gravatar" style="display:block;float:left;" href="http://www.xoriant.com/blog/?author=2"><img alt='' src='http://0.gravatar.com/avatar/078a39b17c2cb36828c973a10892124a?s=60&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D60&amp;r=G' class='avatar avatar-60 photo' height='60' width='60' /><br />
			   <a class="author_member_gravatar" style="padding:5px;font-size:12px;text-decoration:none;font-weight:bold;" href="http://www.xoriant.com/blog/?author=2">xoriant</a></div>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html&amp;title=iPhone+Development%3A+Facts+and+Challenges+&amp;summary=The%20speed%20with%20which%20mobile%20technology%20is%20evolving%20is%20beyond%20remarkable.%20So%20much%2C%20that%20you%20may%20in%20fact%2C%20be%20viewing%20this%20post%20on%20your%20mobile.%20Gone%20are%20the%20days%20when%20you%20would%20have%20a%20mobile%20phone%20solely%20for%20the%20purpose%20of%20connecting%20with%20your%20friends%20%26amp%3B%20family.%20Now%2C%20you%20can%20connect%20with%20300%20million&amp;source=Xoriant Software Product Engineering Blog" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=iPhone+Development%3A+Facts+and+Challenges++-+http://b2l.me/9vxww&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html&amp;title=iPhone+Development%3A+Facts+and+Challenges+" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html&amp;title=iPhone+Development%3A+Facts+and+Challenges+" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html&amp;title=iPhone+Development%3A+Facts+and+Challenges+" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html&amp;t=iPhone+Development%3A+Facts+and+Challenges+" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>



<p>Related posts:<ol><li><a href='http://www.xoriant.com/blog/mobile-application-development/saving-the-state-of-iphone-app.html' rel='bookmark' title='Permanent Link: Saving the state of an iPhone application'>Saving the state of an iPhone application</a> <small>This blog post covers how one can maintain state in an iPhone application. Everyday interactions with the environment require us to save some form of information or data either for immediate...</small></li>
<li><a href='http://www.xoriant.com/blog/mobile-application-development/blackberry-development-environment-and-installation.html' rel='bookmark' title='Permanent Link: BlackBerry Development Environment and Installation'>BlackBerry Development Environment and Installation</a> <small>In this blog post, we shall take a look at how to get started with programming for the BlackBerry device. We shall cover what the device is, give you an...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.xoriant.com/blog/mobile-application-development/iphone-development-facts-and-challenges.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bringing Enterprise Applications to Mobile</title>
		<link>http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html</link>
		<comments>http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html#comments</comments>
		<pubDate>Tue, 24 Nov 2009 09:34:19 +0000</pubDate>
		<dc:creator>xoriant</dc:creator>
				<category><![CDATA[Mobile Application Development]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Blackberry]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Symbian]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[XHTML-MP]]></category>

		<guid isPermaLink="false">http://www.xoriant.com/blog/?p=125</guid>
		<description><![CDATA[Enterprise software is now going mobile. More and more work, which needed your presence in office/home, can be done on-the-go. With introduction of addictive UIs on smart phones, the market for Mobile based Software has grown into a new niche. Smart phone applications can be categorized in to Native Applications and Web Applications. Native apps [...]


Related posts:<ol><li><a href='http://www.xoriant.com/blog/cloud-computing-for-isvs/driving-mobile-applications-via-the-cloud.html' rel='bookmark' title='Permanent Link: Driving Mobile Applications via the Cloud'>Driving Mobile Applications via the Cloud</a> <small>Cloud Computing brings about real benefits to IT organizations by making available computing resources that you can pay as per your usage, while taking away the hassles of resource management....</small></li>
<li><a href='http://www.xoriant.com/blog/software-product-development/integrating-ms-project-with-an-enterprise-product.html' rel='bookmark' title='Permanent Link: Integrating MS Project with an Enterprise Product'>Integrating MS Project with an Enterprise Product</a> <small>This blog deals with integration of MS Project with an Enterprise product At a very basic level, MS Project, or MSP, is a project management tool, used by several organizations...</small></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal"><strong><span style="font-weight: normal;">Enterprise software is now going mobile. More and more work, which needed your presence in office/home, can be done on-the-go. With introduction of addictive UIs on smart phones, the market for Mobile based Software has grown into a new niche.</span></strong></p>
<p class="MsoNormal"><strong><span style="font-weight: normal;">Smart phone applications can be categorized in to Native Applications and Web Applications. Native apps are downloaded on the device may or may not require internet connectivity. Most of the games and utilities like calculator, unit-converter fall in this category. Web Apps are applications that run on the device’s inbuilt browser. It does not need downloading, but requires continuous internet connectivity in most cases.</span></strong></p>
<p class="MsoNormal">Both types of applications on Mobile can be developed by following these interdependent life cycle stages:</p>
<p class="MsoNormal"><strong><em><span>1. Design:</span></em></strong><span> A typical smart phone dimensions of 320&#215;480 gives a very limited real estate to stuff-in the amazing functionalities they can support. Designers really need to master the art of small.</span></p>
<p class="MsoNormal">Native</p>
<p class="MsoNormal"><span>The design needs to be in alignment with various UI standards and can closely follow Human Interface Guidelines(HIG) from Apple. Though they have defined it for iPhone, many of them in my opinion are pure common sense. Hence, HIG is applicable for all devices, specifically for the Native apps. The smart-phone vendors (RIM, Apple etc.) have gone a long way in providing standard and useful applications to their users via their own app-stores.<span> </span></span></p>
<p class="MsoNormal">Web Based</p>
<p class="MsoNormal"><span>In web based application development, for multiple devices for e.g. for iPhone and Blackberry Bold, design issues need to be taken care at the CSS level. For lower versions of Blackberry though UI has to be generated by a different code set. </span></p>
<p class="MsoNormal"><strong><em><span>2. Server side:</span></em></strong><span> APIs not only cater to web based mobile applications, native applications too need to shift the data intensive computation to server side. So there is not much difference between the server side programming for Web and Native apps. Bringing website functionality to mobile is not mere reuse of APIs. It involves optimization of existing APIs for performance. It may also involve revisiting the code for adding device specific checks, abstraction and exception handling etc.</span></p>
<p class="MsoNormal"><strong><em><span>3. Client side:</span></em></strong><span> iPhone, Blackberry, Android, Windows Mobile, Symbian have their own SDKs for development of Native Apps. While iPhone requires experience on Objective C and Mac OS, Blackberry and Android can be handled by Java developers while Windows mobile application can be created using Visual Studio 2008.</span></p>
<p class="MsoNormal">Native</p>
<p class="MsoNormal"><span>Advanced hardware like inbuilt camera, accelerometers etc can also be harnessed for making the mobile application feature-rich – like Auto-orientation, motion based gaming etc. The inbuilt GPS and assisted GPS can be leveraged for creating location based services. Though a plethora of applications are already providing LBS, I find it to be a tip of the iceberg. Adding LBS can make a lot of applications information rich, for end users as well as for vendors, distributors and advertisers. </span></p>
<p class="MsoNormal">Web Based</p>
<p class="MsoNormal"><span>Web based applications on almost all devices, sparing iPhone in some cases; do not need specified SDKs for development. The major issue for web based apps is handling the large number of device-browser combinations that a user may use. What works for IE on BB may not work for FF on the same device. To resolve the issue of developing and maintaining code for different devices XHTML-MP is gaining wide popularity among developers. </span></p>
<p class="MsoNormal"><strong><em><span>4. Testing:</span></em></strong><span> Other than functionality and UI related testing, Mobile app QA requires testing for performance and connectivity related issues.</span></p>
<p class="MsoNormal">Native</p>
<p class="MsoNormal">Mobile software requires to be tested in real (non-simulated) Wi-Fi, GPRS, 3G etc. with different service providers. Something that works on AT&amp;T may be blocked by T-Mobile. Also, an internet savvy application may behave differently in different geographies. Based on expected usage, the application should be tested for all the geographies. One may take assistance from www.deviceanywhere.com.</p>
<p class="MsoNormal">Web Based</p>
<p class="MsoNormal"><span>Web apps always need to be tested on variety of browsers (Mobile browsers) for rendering issues. iPhone supports Safari, while BB supports IE and Firefox and also has it’s own browser. Rigorous manual testing can reveal functionality glitches and alignment issues. Generally for all types of browsers, testing and debugging using Firebug and <a href="http://www.httpwatch.com/">HTTP watch</a> can be quite helpful.</span></p>
<p class="MsoNormal"><span>One should plan the development of mobile applications with these distinct yet interdependent processes in mind. It should really help in developing a standard application in minimum time.</span></p>
<p class="MsoNormal"><span>-Ujjwal Trivedi</span></p>
<div class="author_member_gravatar_pic" style="display:block;">
			   <a class="author_member_gravatar" style="display:block;float:left;" href="http://www.xoriant.com/blog/?author=2"><img alt='' src='http://0.gravatar.com/avatar/078a39b17c2cb36828c973a10892124a?s=60&amp;d=http%3A%2F%2F0.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D60&amp;r=G' class='avatar avatar-60 photo' height='60' width='60' /><br />
			   <a class="author_member_gravatar" style="padding:5px;font-size:12px;text-decoration:none;font-weight:bold;" href="http://www.xoriant.com/blog/?author=2">xoriant</a></div>


<div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-knowledge">
<ul class="socials">
		<li class="shr-linkedin">
			<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html&amp;title=Bringing+Enterprise+Applications+to+Mobile++&amp;summary=Enterprise%20software%20is%20now%20going%20mobile.%20More%20and%20more%20work%2C%20which%20needed%20your%20presence%20in%20office%2Fhome%2C%20can%20be%20done%20on-the-go.%20With%20introduction%20of%20addictive%20UIs%20on%20smart%20phones%2C%20the%20market%20for%20Mobile%20based%20Software%20has%20grown%20into%20a%20new%20niche.%0D%0ASmart%20phone%20applications%20can%20be%20categorized%20in%20to%20Nativ&amp;source=Xoriant Software Product Engineering Blog" rel="nofollow" class="external" title="Share this on LinkedIn">Share this on LinkedIn</a>
		</li>
		<li class="shr-twitter">
			<a href="http://twitter.com/home?status=Bringing+Enterprise+Applications+to+Mobile+++-+http://b2l.me/9vxw9&amp;source=shareaholic" rel="nofollow" class="external" title="Tweet This!">Tweet This!</a>
		</li>
		<li class="shr-googlebuzz">
			<a href="http://www.google.com/buzz/post?url=http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html&amp;imageurl=" rel="nofollow" class="external" title="Post on Google Buzz">Post on Google Buzz</a>
		</li>
		<li class="shr-delicious">
			<a href="http://delicious.com/post?url=http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html&amp;title=Bringing+Enterprise+Applications+to+Mobile++" rel="nofollow" class="external" title="Share this on del.icio.us">Share this on del.icio.us</a>
		</li>
		<li class="shr-digg">
			<a href="http://digg.com/submit?phase=2&amp;url=http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html&amp;title=Bringing+Enterprise+Applications+to+Mobile++" rel="nofollow" class="external" title="Digg this!">Digg this!</a>
		</li>
		<li class="shr-comfeed">
			<a href="http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html/feed" rel="nofollow" class="external" title="Subscribe to the comments for this post?">Subscribe to the comments for this post?</a>
		</li>
		<li class="shr-reddit">
			<a href="http://reddit.com/submit?url=http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html&amp;title=Bringing+Enterprise+Applications+to+Mobile++" rel="nofollow" class="external" title="Share this on Reddit">Share this on Reddit</a>
		</li>
		<li class="shr-facebook">
			<a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html&amp;t=Bringing+Enterprise+Applications+to+Mobile++" rel="nofollow" class="external" title="Share this on Facebook">Share this on Facebook</a>
		</li>
</ul>
<div style="clear:both;"></div>
</div>



<p>Related posts:<ol><li><a href='http://www.xoriant.com/blog/cloud-computing-for-isvs/driving-mobile-applications-via-the-cloud.html' rel='bookmark' title='Permanent Link: Driving Mobile Applications via the Cloud'>Driving Mobile Applications via the Cloud</a> <small>Cloud Computing brings about real benefits to IT organizations by making available computing resources that you can pay as per your usage, while taking away the hassles of resource management....</small></li>
<li><a href='http://www.xoriant.com/blog/software-product-development/integrating-ms-project-with-an-enterprise-product.html' rel='bookmark' title='Permanent Link: Integrating MS Project with an Enterprise Product'>Integrating MS Project with an Enterprise Product</a> <small>This blog deals with integration of MS Project with an Enterprise product At a very basic level, MS Project, or MSP, is a project management tool, used by several organizations...</small></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.xoriant.com/blog/mobile-application-development/bringing-enterprise-applications-to-mobile.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

