Monday, January 31, 2011

Questions that need to be answered before you start learning android



1. WHY DEVELOP FOR MOBILE? 

In market terms, the emergence of modern mobile smart phones and super phones — multifunction devices including a phone but featuring a full-featured web browser, cameras, media players, Wi-Fi, and location-based services — has fundamentally changed the way people interact with their mobile devices and access the Internet. Mobile-phone ownership easily surpasses computer ownership in many countries; 2009 marked the year that more people accessed the Internet for the first time from a mobile phone rather than a PC.

The increasing popularity of modern smart phones, combined with the increasing availability of flat-rate, affordable data plans and Wi-Fi, has created a growth market for advanced mobile applications.

The ubiquity of mobile phones, and our attachment to them, makes them a fundamentally different platform for development from PCs. With a microphone, a camera, a touch screen, location detection, and environmental sensors, a phone can effectively become an extension of your own perceptions.

With the average Android user installing and using around 40 apps, mobile applications have changed the way people use their phones. This gives you, the application developer, a unique opportunity to create dynamic, compelling new applications that become a vital part of people’s lives.

2. WHY DEVELOP FOR ANDROID?

If you have a background in mobile application development, you don’t need me to tell you that:
  • A lot of what you can do with Android is already possible.
  • But doing it is painful.
Android represents a clean break, a mobile framework based on the reality of modern mobile devices designed by developers, for developers.

With a simple and powerful SDK, no licensing fees, excellent documentation, and a thriving developer community, Android represents an excellent opportunity to create software that changes how and why people use their mobile phones.
From a commercial perspective Android:
  • Requires no certification for becoming an Android developer
  • Provides the Android Market for distribution and monetization of your applications
  • Has no approval process for application distribution
  • Gives you total control over your brand and access to the user’s home screen

3. What Does Android have that others don't?  

Many of the features in mobile devices, such as 3D graphics and native database support, are also available in other mobile SDKs. Here are some of the unique features that set Android apart: 

Google Map applications- Google Maps for Mobile has been hugely popular, and Android offers a Google Map as an atomic, reusable control for use in your applications. The Map View lets you display, manipulate, and annotate a Google Map within your Activities to build map-based applications using the familiar Google Maps interface.

Background services and applications- Background services let you create an application that uses an event-driven model, working silently while other applications are being used or while your mobile sits ignored until it rings, flashes, or vibrates to get your attention. Maybe it’s a streaming music player, an application that tracks the stock market, alerting you to  significant changes in your portfolio, or a service that changes your ring-tone or volume  depending on your current location, the time of day, and the identity of the caller.

Shared data and inter-process communication- Using Intents and Content Providers, Android lets your applications exchange messages, perform processing, and share data. You can also use these mechanisms to leverage the data and functionality provided by the native Android applications. To mitigate the risks of such an open strategy, each application’s process, data storage, and files are private unless explicitly shared with other applications via a full permission-based security mechanism.

 All applications are created equal- Android doesn’t differentiate between native applications and those developed by third parties. This gives consumers unprecedented power to change the look and feel of their devices by letting them completely replace every native application with a third-party alternative that has access to the same underlying data and hardware.

Home-screen Widgets, Live Folders, Live Wallpaper, and the quick search box- Using Widgets, Live Folders, and Live Wallpaper, you can create windows into your application from the phone’s home screen. The quick search box lets you integrate search results from your application directly into the phone’s search functionality.

Existing mobile development platforms have created an aura of exclusivity around mobile development. Whether by design or as a side effect of the cost, complexity, or necessity for approval involved in developing native applications, many mobile phones remain almost exactly as they were when first purchased. 

In contrast, Android allows, even encourages, radical change. As consumer devices, Android handsets ship with a core set of the standard applications that consumers demand on a new phone, but the real power lies in users’ ability to completely change how their devices look, feel, and function.

Android gives developers a great opportunity. All Android applications are a native part of the phone, not just software that’s run in a sandbox on top of it. Rather than writing small-screen versions of software that can be run on low-power devices, you can now write mobile applications that change the way people use their phones.

While Android will still have to compete with existing and future mobile development platforms as an open-source developer framework, the strength of the development kit is very much in its favor. Certainly its free and open approach to mobile application development, with total access to the phone’s resources, is a giant step in the right direction.



No comments:

Post a Comment