Thursday, 21 April 2016

Hello Friends,,,, till now we had acquire knowledge on whats the android? and its architecture all now i am going to detail about the Core Building Blocks of Android that means Fundamental Blocks of Android they are :
  • Activity
  • View
  • Intent
  • Services
  • Content Providers
  • Fragments
  • AndroidManifest.xml
  • AVD (Android Virtual Device)
Activity: An Activity is a Class that represents a single Screen
               An Activity is implemented as a subclass of an Activity. Here is the Syntax :
             
  Public class MainActivity extends Activity{
       }

View : Anything that you see on screen is View that is UI Elements such as Buttons, Label ,                             Text Fields etc..,

Intent : Intent is mainly used to invoke the Components. It is mainly used for

  • Start the Service
  • Launch an activity
  • Display a web page
  • Display a list of Contacts
  • Broadcast a message
  • Dial a phone call etc.., Here is the Syntax
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse("http://www.acquireandroid.blogspot.in"));
startActivity(i);

Here i is the object creation for intent, this is the code to view the webpage which is mentioned in Uri.parse....

Services : Service is a background process that can run for Long Time
There are two types of services Local Service and Remote Service

  • Local Service is accessed from within the application
  • Remote Service is accessed remotely from other application running on the same device
Content Providers : Content Providers are used to share the data between application
A Content provider is implemented as a subclass of ContentProvider class and must implement a standard set of APIs that enable other applications to perform transactions... Here is the Syntax

Public class MyContentProvider extends ContentProvider
{
       public void onCreate()
          {
           }
}

Fragments : It is like a Parts of activity. An Activity can display one or more fragments on the screen at the same time. 

AndroidManifest.xml : It contains information about activities, content providers, permissions etc. It is like web.xml file in Java EE.

AVD (Android Virtual Device) : It is used to test the android application without the need for mobile or tablet etc. It can be created in different configuration to emulate different types of real devices.



In Future i will go through detailed about these Fundamental Blocks...that's all for today friends Happy learning... :-)

Monday, 11 April 2016

Architecture of Android:   Heloo friendsss.... Now i am going to explain about the Architecture of Android and what are the layers existed in the architecture and what are the functioning and all. Lets see the below image then you can easily understand how the architecture flow is... ;-)


There are Five Layers in this Architecture.They are:
1) Linux Kernel
2) Native Library (Middle-ware)
3) Android Run-time
4) Application Framework
5) Applications
Let us learn the deep in these layers

1) Linux Kernel
     
         At the bottom of the Android stack is the Linux Kernel. It never really interacts with the users and developers, but is at the heart of the whole system. Its importance stems from the fact that it provides the following functions in the Android system:
  • Hardware Abstraction
  • Memory Management Programs
  • Security Settings
  • Power Management Software
  • Other Hardware Drivers (Drivers are programs that control hardware devices.
  • Support for Shared Libraries
  • Network Stack
2) Native Library (Middle-ware)

                                  The next layer in the Android architecture includes Android’s native libraries. Libraries carry a set of instructions to guide the device in handling different types of data. For instance, the playback and recording of various audio and video formats is guided by the Media Framework Library.

Open Source Libraries:

  • Surface Manager: composing windows on the screen
  • SGL: 2D Graphics
  • Open GL|ES: 3D Library
  • Media Framework: Supports playbacks and recording of various audio, video and picture formats.
  • Free Type: Font Rendering
  • WebKit: Browser Engine
  • libc (System C libraries)
  • SQLite
  • Open SSL
3) Android Run-time

                   Located on the same level as the libraries layer, the Android runtime layer includes a set of core Java libraries as well. Android application programmers build their apps using the Java programming language. It also includes the Dalvik Virtual Machine.
Android-Runtime-layer

What is Dalvik VM?

Dalvik is open-source software. Dan Bornstein, who named it after the fishing village of Dalvík in Eyjafjörður, Iceland, where some of his ancestors lived, originally wrote Dalvic VM. It is the software responsible for running apps on Android devices.
  • It is a Register based Virtual Machine.
  • It is optimized for low memory requirements.
  • It has been designed to allow multiple VM instances to run at once.
  • Relies on the underlying OS for process isolation, memory management and threading support.
  • Operates on DEX files.
4) Application Framework Layer
Application framework layer                                   Our applications directly interact with these blocks of the Android architecture. These programs manage the basic functions of phone like resource management, voice call management etc.
Important blocks of Application Framework:
  • Activity Manager: Manages the activity life cycle of applications.
  • Content Providers: Manage the data sharing between applications.
  • Telephony Manager: Manages all voice calls. We use telephony manager if we want to access voice calls in our application.
  • Location Manager: Location management, using GPS or cell tower
  • Resource Manager: Manage the various types of resources we use in our Application

5) Application Layer

Applications-layer-in-Android-stack
                                         The applications are at the topmost layer of the Android stack. An average user of the Android device would mostly interact with this layer (for basic functions, such as making phone calls, accessing the Web browser etc.). The layers further down are accessed mostly by developers, programmers and the likes.
Several standard applications come installed with every device, such as:
  • SMS client app
  • Dialer
  • Web browser
  • Contact manager
That's all for today Happy Learning :-)


Wednesday, 6 April 2016

Android Versions

Good Morning Friends, “If you want to shine like a sun. First burn like a sun.” - A.P.J Abdul Kalam 
     
Android Versions : Today i am going to explain about the Versions of Android. Its very interesting to know the names because it named after food items lets see the below picture
       
Android 1.0                                                                          (API level 1)
Android 1.1                                                                           (API level 2)
Android 1.5 Cupcake                                                         (API level 3)
Android 1.6 Donut                                                             (API level 4)
Android 2.0 Eclair                                                             (API level 5)
Android 2.0.1 Eclair                                                           (API level 6)
Android 2.1 Eclair                                                              (API level 7)
Android 2.2 - 2.2.3 Froyo                                                  (API level 8)
Android 2.3 - 2.3.2 Gingerbread                                     (API level 9)
Android 2.3.3 - 2.3.7 Gingerbread                                  (API level 10)
Android 3.0 Honeycomb                                                  (API level 11)
Android 3.1 Honeycomb                                                   (API level 12)
Android 3.2 Honeycomb                                                   (API level 13)
Android 4.0 - 4.0.2 Ice Cream Sandwich                       (API level 14)
Android 4.0.3 - 4.0.4 Ice Cream Sandwich                    (API level 15)
Android 4.1 Jelly Bean                                                        (API level 16)
Android 4.2 Jelly Bean                                                        (API level 17)
Android 4.3 Jelly Bean                                                        (API level 18)
Android 4.4 Kit-Kat                                                              (API level 19)
Android 5.0 Lollipop                                                            (API level 21,22)
Android 6.0 Marshmallow                                                           (API level 23)
                                     
                  The above versions are in Alphabetic order which are in food names :-)

Tuesday, 5 April 2016

Android

Myself

               Hello friends this is Bhanu working as a software engineer on Java and android platform. This is my New Blog here i am going to explore some important and useful topics on Android which helps you to develop Android Apps Hands on friendly.First of all we have to know that what is Android?How it developed?What are the uses of Android Apps.

Android ?

              Android is an open source and Linux-based Operating System for mobile devices such as smartphones and tablet computers. Android was developed by the Open Handset Alliance, led by Google, and other companies.

Android offers a unified approach to application development for mobile devices which means developers need only develop for Android, and their applications should be able to run on different devices powered by Android.

The first beta version of the Android Software Development Kit (SDK) was released by Google in 2007 where as the first commercial version, Android 1.0, was released in September 2008.

On June 27, 2012, at the Google I/O conference, Google announced the next Android version, 4.1 Jelly Bean. Jelly Bean is an incremental update, with the primary aim of improving the user interface, both in terms of functionality and performance.

The source code for Android is available under free and open source software licenses. Google publishes most of the code under the Apache License version 2.0 and the rest, Linux kernel changes, under the GNU General Public License version 2.

Creators of Android
                   The original creators were Android Inc. — led by Andy Rubin, who became the head of Android development at Google after the acquisition in 2005. Google bought the company because they thought Android Inc. had a interesting and important concept — of creating a powerful, yet free, mobile operating system — and its considerable mobile arsenal. Android helped Google to reach a younger audience as well as give the company a number of brilliant employees from Android Inc.

In March 2013, Andy Rubin decided to leave the company he founded, Android, to move on to other projects. However, Android hasn’t missec a step, and replaced him with Sundar Pichai. Pichai used to be the head of Chrome OS — Google’s desktop operating system (for laptops and desktops) — so his experiences leading development teams should be beneficial to Google.

andy rubin google android
Andy Rubin
                                      
                    Over the course of his 29-year career in Silicon Valley, Andy Rubin has become known as a technical genius, a skilful businessman, and a dynamic leader.

Above all, Rubin is an entrepreneur who loves to create things, whether it's writing code or building robots.

His knack for engineering was evident in Building 44, where Android lives on Google's campus. There, Rubin spent his spare time programming a gigantic robotic arm to make him coffee each time he sent it a text message. The machine was on the second floor of Building 44, and it was large enough to lift cars, a former Googler says.

Another one of Rubin's projects involved flying a massive remote-controlled helicopter on Google's lawn.

"It's this huge $5,000 helicopter - he's trying to pilot it and it takes off and flips over upside down," said Sumit Agarwal, a former head of mobile product management at Google. "And it doesn't explode, but you've got this helicopter that's literally ripped itself apart out on the lawn in front of Building 44.
                                                     In the early 2000s, carriers controlled everything from the way a phone was marketed to how much it would cost. Carriers called the shots back then, and they were determined to keep it that way. They didn't want any company - large or small - infringing on their profits, which is why most of the tech industry thought an idea like Rubin's was impossible, say sources who worked at Google in Android's early days.

While the carrier system was closed and siloed, Android is open. The term "open source" means anyone can take the original source code that makes up Android and use it on their gadgets free. Anyone can build on that code or modify it.

Rubin initially tried to design Android for cameras but couldn't get traction from investors. So he teamed up with Chris White, who previously designed the interface for WebTV, and Nick Sears, a former T-Mobile marketing executive Rubin had worked with when launching the Danger Hiptop, or T-Mobile Sidekick as it was widely known. Rubin explained his idea to create an open-source operating system for phones. Rich Miner, another Android cofounder who leads the East Coast investment team at Google Ventures, joined the group in February 2004.