Android is a software stack for mobile devices that includes an operating system, middleware and key applications. The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
Features
* Application framework enabling reuse and replacement of components
* Dalvik virtual machine optimized for mobile devices
* Integrated browser based on the open source WebKit engine
* Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the OpenGL ES 1.0 specification (hardware acceleration optional)
* SQLite for structured data storage
* Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
* GSM Telephony (hardware dependent)
* Bluetooth, EDGE, 3G, and WiFi (hardware dependent)
* Camera, GPS, compass, and accelerometer (hardware dependent)
* Rich development environment including a device emulator, tools for debugging, memory and performance profiling, and a plugin for the Eclipse IDE
Android Architecture
The following diagram shows the major components of the Android operating system. Each section is described in more detail below.
Android System Architecture
Applications
Android will ship with a set of core applications including an email client, SMS program, calendar, maps, browser, contacts, and others. All applications are written using the Java programming language.
Application Framework
By providing an open development platform, Android offers developers the ability to build extremely rich and innovative applications. Developers are free to take advantage of the device hardware, access location information, run background services, set alarms, add notifications to the status bar, and much, much more.
Developers have full access to the same framework APIs used by the core applications. The application architecture is designed to simplify the reuse of components; any application can publish its capabilities and any other application may then make use of those capabilities (subject to security constraints enforced by the framework). This same mechanism allows components to be replaced by the user.
Underlying all applications is a set of services and systems, including:
* A rich and extensible set of Views that can be used to build an application, including lists, grids, text boxes, buttons, and even an embeddable web browser
* Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data
* A Resource Manager, providing access to non-code resources such as localized strings, graphics, and layout files
* A Notification Manager that enables all applications to display custom alerts in the status bar
* An Activity Manager that manages the lifecycle of applications and provides a common navigation backstack
For more details and a walkthrough of an application, see the Notepad Tutorial.
Libraries
Android includes a set of C/C++ libraries used by various components of the Android system. These capabilities are exposed to developers through the Android application framework. Some of the core libraries are listed below:
* System C library - a BSD-derived implementation of the standard C system library (libc), tuned for embedded Linux-based devices
* Media Libraries - based on PacketVideo's OpenCORE; the libraries support playback and recording of many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG
* Surface Manager - manages access to the display subsystem and seamlessly composites 2D and 3D graphic layers from multiple applications
* LibWebCore - a modern web browser engine which powers both the Android browser and an embeddable web view
* SGL - the underlying 2D graphics engine
* 3D libraries - an implementation based on OpenGL ES 1.0 APIs; the libraries use either hardware 3D acceleration (where available) or the included, highly optimized 3D software rasterizer
* FreeType - bitmap and vector font rendering
* SQLite - a powerful and lightweight relational database engine available to all applications
Android Runtime
Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language.
Every Android application runs in its own process, with its own instance of the Dalvik virtual machine. Dalvik has been written so that a device can run multiple VMs efficiently. The Dalvik VM executes files in the Dalvik Executable (.dex) format which is optimized for minimal memory footprint. The VM is register-based, and runs classes compiled by a Java language compiler that have been transformed into the .dex format by the included "dx" tool.
The Dalvik VM relies on the Linux kernel for underlying functionality such as threading and low-level memory management.
Linux Kernel
Android relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model. The kernel also acts as an abstraction layer between the hardware and the rest of the software stack.
Showing posts with label Andriod Phone. Show all posts
Showing posts with label Andriod Phone. Show all posts
Thursday, 26 May 2011
How to connect internet from android phone to computer
Any Smartphone you own, the best way to exploit it is by integrating it with Internet. That’s an access to rest of the features and applications. The mobiles based on android platform show a good connectivity for WAP, EDGE or any 3G service available from service provider. But the issue which seems often with android phone users is connecting the device with computer. I have observed it in many mobiles I am aware of like my own i.e. Samsung Galaxy Spica. It was a bit complex thing to achieve past few months but few good developers have created an interface application to tether internet connection from service provider with computer.
The reason behind troubles with internet connectivity is unsupported feature from firmware or experimental/ beta firmware platform. So we needed to create a localhost TCP in between mobile phone and computer. The command was accessible through Android SDK.
localhost tcp:forward tcp:1080
Nowadays we have only two well developed applications available from android market:
PDANet
It is the best between two with an integrated SMS agent. The connectivity is also better than EasyTether. The only disadvantage in this application is that you cannot access HTTPS pages without buying full version.
EasyTether
It is the only alternative from Android Market. It is also a good application but connection drop is a frequent glitch. The pro of EasyTether is that it allows accessing all features including HTTPS pages in its trial version. But that is limited to a certain time period. I guess for some 50days. Then you need to buy full version.
For both the above applications, you need to have two interfaces; one for mobile phone which is easily available from Android Market and another for computer that you need to download from the respective official websites. Click on the Application to download it.
The reason behind troubles with internet connectivity is unsupported feature from firmware or experimental/ beta firmware platform. So we needed to create a localhost TCP in between mobile phone and computer. The command was accessible through Android SDK.
localhost tcp:forward tcp:1080
Nowadays we have only two well developed applications available from android market:
PDANet
It is the best between two with an integrated SMS agent. The connectivity is also better than EasyTether. The only disadvantage in this application is that you cannot access HTTPS pages without buying full version.
EasyTether
It is the only alternative from Android Market. It is also a good application but connection drop is a frequent glitch. The pro of EasyTether is that it allows accessing all features including HTTPS pages in its trial version. But that is limited to a certain time period. I guess for some 50days. Then you need to buy full version.
For both the above applications, you need to have two interfaces; one for mobile phone which is easily available from Android Market and another for computer that you need to download from the respective official websites. Click on the Application to download it.
Labels:
Andriod Phone
Droid as Computer
The Droid is essentially a computer that can also make phone calls. It is connected to the Internet through the Verizon cellular data network or a local WiFi network. You can browse the Internet, send and receive emails, stream or download videos/music and so much more. Texting or entering data is easy using one of the three keyboards (touchscreen vertical or horizontal and slideout keyboard).
Some people I know could use the Droid and never need a conventional laptop or desktop computer.
Droid as Internet Connection for your Laptop
The Verizon data plan for the Droid is unlimited. There is no 5GB limit as with cellular data cards or tethering my old phone using VZaccess Manager. How about using the Droid’s Internet connection to connect my computer like I used to do? Well, I can. I just need PdaNet software for the Droid from June Fabrics.
Tethering is the term we use to describe the hardware and software needed to connect a computer to the Internet using the cellular data connection from a smart phone. It is usually a USB connection, but could be wireless using Bluetooth DUN (dial-up network) or WiFi. A wired connection to the computer is simplest and most reliable. The necessary cable comes as a standard attachment to the Droid.
There are two parts of the system. A program that runs on your computer and stays in the system tray and an app on the Droid. Installation is easy. Follow the easy instructions. Download the installation program from the website and run it on your computer. Plug the Droid into an available USB port. Let the program talk to the phone for a moment to establish communication, and you are ready.
First, start the PdaNet app on the Droid phone and Enable USB Tether. Then, on your computer, click the PdaNet icon in the system tray and connect.
This is a broadband connection and speed is determined by the cellular network. In a good Verizon area, the speeds are excellent. You can easily stream video and not worry about going over your monthly data limit.
The Droid is not the only smart phone that allows tethering. PdaNet has been available for PalmOS phones, BlackBerrys and Windows Mobile phones for a while.
If you want to use PdaNet for the iPhone, you need to “jailbreak” it, voiding the warranty.
The price of a single license is $23.95. It is a one time purchase for the Android version. One license covers one phone (you can reuse the license if you switch to a new Android phone). There is no limit on the computer side and your license gives you unlimited free upgrades.
Labels:
Andriod Phone
How to View MS Word files in Android
Have you ever tried to open a Microsoft Word document from inside Android’s Gmail client? If you have not, please don’t waste your time. All you will see is a force close error and nothing more. Google has said they are working on this, and other companies are developing applications to view and edit MS files. What if you are in a pinch and you need to view a Word doc now?
Here is a simple work around to be able to view your document on your Android device:
1. Open up the Android Browser and navigate to www.gmail.com
2. The mobile page will load, but click the link at the bottom of the page to load the desktop version.
3. Find the email with the attachment you want to read then click “View as HTML” located under the document name.
I have tested this method with both .doc and docx file types. Its not pretty or quick to get to, but it just works. If you have any TIPS for Android, please
Labels:
Andriod Phone
What Is an Androi Phone?
An Android™ phone is a cellphone that uses the Google-developed Android™ operating system and platform. Google partnered with the High Tech Computer Corporation (HTCC) to build hardware for the G1 cellphone, the first mobile phone to run the Android™ platform. In 2008, T-Mobile premiered the G1 Android™ phone to the public.
On the technical side, an Android™ phone runs on the Android™ operating system, key applications and middleware. It's Linux kernel-based, has applications that are written in the Java language and can even run applications written in the C language. It is also a product, partly, of the Open Handset Alliance, which encourages the use and advancement of open source software for cellphones.
One of the biggest differences between a phone running the Android™ platform and others is that the software Android™ uses is a complex operating system. In contrast, the majority of operational cellphones run primitive real time applications.
In regard to its Internet capabilities, the Android™ phone uses WebKit to power the G1's Chrome Lite browser. Because WebKit also powers iPhone's Safari, the G1 is a competitor to the iPhone in terms of users' enhanced web experiences.
An Android™ phone can also run multiple applications at the same time and in the background of a phone, making multitasking easier and the functionality of the phone more fluid than other cellphones.
Android™ phones are considered revolutionary in some circles because of its open source, mobile platform. All developers, whether professional or hobbyists, are encouraged to write programs and applications for the Android™ operating system and contribute to the evolving Android™ project by submitting them to the Android™ Market. G1 users then choose to download and use the applications on their phone by accessing the application library on their handset.
Android™ offers a Software Development Kit to help developers create functional applications. While some parts of the Android™ operating system are protected under the Apache License to guard against applications that could compromise the phone's functionality, much of it is released under the General Public License which invites developers to make innovative modifications.
Comparable devices and their operating systems had before been governed by strict proprietary rules. Developers interested in inventing programs for the iPhone often encountered resistance when attempting to create iPhone programs that closely mirrored applications owned by Apple. For example, developers are prohibited from creating programs that look or act like Apple's iTunes and it's hypothetically possible for any current iPhone application developer to have his or her applications pulled from the iPhone Store if Apple chooses to compete in the same market with their version of the developer's application.
Another important distinction of the Android™ platform is that it is not tied to a specific manufacturer. Any manufacturer interested in producing its own version of an Android™ phone is welcome to use the platform for their own devices. The result could mean a large number of competing cellphone companies using Android™ to power their mobile phones and market their devices.
Labels:
Andriod Phone


