Thursday, 22 November 2018

Building Your First App

Now you 'll learn how to build your first Android app. You’ll learn how to create an Android project with Android Studio and run a debuggable version of the app. You'll also learn some fundamentals of Android app design, including how to build a simple user interface and handle user input.

Follow the steps in the below link to create your own app. Don't worry about the coding part now. Just follow the instructions and build your own app and then come back. Good luck!

https://developer.android.com/training/basics/firstapp/creating-project.html

Wow, Congrats! You built your first own Hello world app. Most of the developers in the world irrespective of the ciding language started their development carrier by learning the hello world program only and you joined this list too😉. You become a Android developer now👍.



In your Hello world app you see the below 3 files.

app > java > com.example.myfirstapp > MainActivity.java: This is the main activity (the entry point for your app). When you build and run the app, the system launches an instance of this Activityand loads its layout.

app > res > layout > activity_main.xml: This XML file defines the layout for the activity's UI. It contains a TextView element with the text "Hello world!".

app > manifests > AndroidManifest.xml: The manifest file describes the fundamental characteristics of the app and defines each of its components.


Now we will see all the important elements in XML which are helpful in designing our desired screen.

Declare UI elements in XML: Android provides a straightforward XML vocabulary that corresponds to the View classes and subclasses, such as those for widgets and layouts.

Using Android's XML vocabulary, you can quickly design UI layouts and the screen elements they contain, in the same way you create web pages in HTML — with a series of nested elements.

Each layout file must contain exactly one root element, which must be a View or ViewGroup object. Once you've defined the root element, you can add additional layout objects or widgets as child elements to gradually build a View hierarchy that defines your layout.

XML helps to create the layout of the screen. All the XML layout will be saved under app > res > layout.

The default main layout name would be activity_main.xml and our java program will load this layout using setContenView method in your Activity.onCreate implementation.

For example,
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_layout);
}


In the above three messages we come across several keywords which we should be aware of. The keywords are

  • Layout
  • View
  • ViewGroup 
  • onCreate
  • setContentView 
  • R.layout.main-layout
Now we will try to understand what they are and its functionality by clicking each of them.

Installing Android Studio

Ok, lets wrap up all the stories and start to work on.

Are you ready to build your first Android app? We didn't learn any coding right? But, still we could build our first own app😊. Excited? Let's do it.

Note: For this you need a laptop and having Android Studio and Java installed on it.

You can download Android Studio from the below link
https://developer.android.com/studio/index.html

If you found any difficulties in installing Android Studio, you can refer the below videos
For Windows: https://www.youtube.com/watch?v=xWa8Rf9cBps

For Linux/Ubuntu:
For Mac:https://www.youtube.com/watch?v=qM_n7boRMZI


Download Android Studio and SDK tools  |  Android Developers
Download the official Android IDE and developer tools to build apps for Android phones, tablets, wearables, TVs, and more.

XML and Java in Android development

What is the part of XML and Java in Android development?
In simple words
  XML for layout JAVA for programming your app
XML:
Basically , xml is used for layout designing.
All the UI and layout of your app is designed using xml.
Unlike Java (which is Back Bone of your app), xml helps you to design your app , how it will look , how components like buttons , textview , etc will be placed and their styling.

Apart from these , xml is also used for parsing data either from database or server into your android app.(Xml parsing).


Let's Learn Android Easily.

Oh wait! Sorry to stop you again. We forget to see the Prerequisites for learning app development for Android.

1. Java Experience: Android development is mostly done in Java. It’s not a difficult language to learn, per se, but knowing how it applies to Android development can be confusing without a firm foundation in the language. Android Java is not exactly standard Java, but learning standard Java will make it much easier for you to pick up Android development.


Even if you know Java programming earlier and didn't use it for a while, please go and brush up your Java skills.

I would highly recomment the below site for the Java basics. We don't need the advanced concepts of Java so please go through the Java tutorial section and Java Object Oriented Section.
https://www.tutorialspoint.com/java/

2. XML Experience: Knowing XML can be useful in a number of tech-related fields and Android is no exception.
In particular, XML files make it easier to declare UI elements in the apps you create. Past experience is a big plus.Don't know what XML is and confused what it is doing in Android development?. Let's see it in a short while.



3. A laptop and having Android Studio and Java installed on it. If you ever worked in Eclipse, you will find not much differences in Android Studio and if not, don't worry you are going to learn a new thing which will be exciting.
4. Perseverance: Lastly, learning the ins and outs of the Android development toolkit is going to take time. Learning how to create a quality app is going to take even more time. Don’t rush. Keep at it and focus your mind on the long term. If you don’t, you’ll be frustrated and want to give up.

Wednesday, 21 November 2018

A History of Android:

A History of Android:

Android was born on November 5, 2007. Since then, it’s grown up to be one of the most dominant operating systems in the world. But that didn’t just happen overnight. Like all of us, Android went through some awkward years and learned some hard lessons before becoming the OS it is today.

Here’s a retrospective showing how we got to where we are.

Cupcake (Android 1.5)

Android had some alphas and betas for T-Mobile’s G1 before this release, but cupcake was its first confectionary-named operating system.

We got lots of fun stuff in this update, including support for third-party virtual keyboards (oh yeah, no more hardware keys!) and the ability to upload videos and photos to YouTube and Picasa. Oh, and it also got widgets!

Cupcake made the T-Mobile’s G1 something to behold (at least for 2009), but this was just a humble beginning. Android had tons of work to do.
Donut (Android 1.6)

Android Donut was the OS that started making others forsake their Palm Pres and start taking Android more seriously.
This update brought along universal search, text-to-speech superpowers and CDMA compatibility (hello, Verizon).

The update began pushing out to all possible handsets on October 1, 2009.





Eclair (Android 2.0)

For Eclair, the camera got a little TLC with some much needed flash support, digital zoom, and white balance features to name a few, and how about them live wallpapers!
Google also put some thought into a smarter keyboard that could select contact names as suggestions. Not the biggest update in Android’s history, but perhaps one the more deliciously named.







Froyo (Android 2.2)

With Froyo, it was all about speed. Gizmodo’s Matt Buchanan had this to say about the new Android update:

The speed boost in 2.2 is fantastic, but what makes Froyo a truly great update is that it tightens bolts all across the entire platform. Android has evolved into a real product, on a totally different level than its first year….Android 2.2 is the first version of Android that feels totally complete—it performs like it should and it has most of the features it should. It’s not quite at the point my mother could use it without a precarious learning curve, but you can see how it’s going to get better. It’s safe to say that with Froyo, Android has become something that most people really can use—and love.

The design was still a little clunky compared to the more streamlined and elegant competition, but simple things like adding a bottom dock for quick access to the dialer and app drawer started showing how Android was making a slow crawl toward user friendliness.


Gingerbread (Android 2.3)

Where the last few updates had been all about function, Google finally took a moment to look at form in late 2010.
The user interface was overhauled with a darker theme that also continued Android’s speed uptick. But that didn’t mean new features completely disappeared. Android added support for NFC, the super useful download manager, and even simple things like improved copy and paste.

Unfortunately, this was when software skinning was in full swing and stock Android began to recede into the background. Only a handful of handsets, like the Google Nexus S, the Nexus One, and the T-Mobile G2, even saw these changes as designed above.

Honeycomb (Android 3.0)

Honeycomb primarily focused on one thing and one thing only—tablets.
The iPad released only months earlier in the fall of 2010, and Android needed an OS that could compete in a bigger form factor not fit for your pocket. This included what Google called a “Holographic” interface and a more intuitive keyboard for bigger devices.








Ice Cream Sandwich (Android 4.0)

ICS reoriented toward the mobile phone with an updated interface and the complete dissolution of hardware buttons.
This means we finally got the actions bar and the ever-important recent apps button (how did we ever live without it?!). The design was really a merger of Android’s tablet OS (Honeycomb) and the mobile OS (Gingerbread, Froyo, et al). Apps were more powerful, multitasking was now front and center, and you could start to really see the computer-class power that were being packed inside smartphones. In fact, we were so impressed that we called it “Android’s most significant upgrade to date.”

The modern Android was coming together.


Jelly Bean (Android 4.1)

GOOGLE NOW! Seriously, it’s my favorite feature of Android and was the release where I started looking at my iPhone 3GS with disdain.
Jellybean had a super-improved voice assistant when searching and notifications finally didn’t suck, offering much more context from the drop-down menu.

The homescreen also got revamped because now widgets could be resized and placed anywhere. Android was more customizable and powerful than ever.



KitKat (Android 4.4)

It would be more than a year until Android moved on to its next big release (though Jellybean was continuously upgraded up until the summer of 2013) and launched its KitKat update with the Nexus 5 on Halloween in 2013.
Google Now was now better than ever with some prescient abilities that tried to guess what users wanted before they even asked, and Hangouts was upgraded with some much-needed SMS capabilities.

Most importantly, KitKat slimmed down the OS’s footprint, meaning devices with only 512MB of RAM could run the OS smoothly. This came in handy for Android’s push into cheaper phone markets with its Android One program.

Lollipop (Android 5.0)

Hello Lollipop and hello modern Android.
Lollipop’s biggest claim to fame was its dramatic reimagining of the Android operating system that started all the way back with Ice Cream Sandwich. Icons, animations, and the multitasking menu were completely redone with Google’s Material Design approach, and the Android lockscreen became much more useful with better notification integration. Google continued opening up Google Now to third-party developers and thankfully added “silent mode” back in for notifications.
This was the the design future for Android, and one that Google continues today.


Marshmallow (Android 6.0)

Android Marshmallow is all about maintenance and not so much a makeover.
But it does come with some awesome additions, including a new way of handling app permissions, a new and improved Google Now, and official fingerprint sensor support. Google’s also improved battery life with Doze and bundling in the Android Sensor Hub in its latest Nexus smartphones, meaning you should be able to survive the day without needing to pull out a charging cable.

Now currently, most of the latest phones are running in this version (Marshmallow)

Nougat (Android 7.0)

Nougat, Android’s latest release, brings features that Android users have been clamoring (and already enjoying on some other OSes) for awhile.
The big one is multi-windowed support, meaning apps can finally be used in split screen views.

So yeah, Android’s come a long way. It’s grown out of its awkward phase and is now one of the best and sleekest OSes out there. But there’s always room to grow.




Oreo (Android 8.0)

Android Oreo is a completely new mobile operating system.
Not just few however a lot of things are new in Android Oreo. In fact android app developers, companies and enthusiasts are all very excited about it.

Some even say mobile app development will not be the same from here on. All major handset manufacturers have confirmed that their recent flagship phones will be updated to Android Oreo. Precisely Android Oreo is going to be the backbone of future android devices.



Pie (Android 9.0)

With Android 9, the best of apps are bound to get even faster.
Slices features brings relevant parts of your favorite apps, creating interactive snippets of your favorite apps in different places. Slices displays information from apps directly within the Google search app, in a similar manner to the way Google displays snippets of information in web search results.








Uhh.. that's a lot of information about Android I guess. Now we know the history of Android. Well done! The main picture is about to start :). Good luck!

Monday, 19 November 2018

The first Android phone


Finally, in September 2008, T-Mobile announced the T-Mobile G1, the first smartphone based on Android. About a month later, Google released the Android 1.0 source code under the Apache license.

Image Source: Cnet.com

It then became available to anyone, and it’s because of this that we are able to flash custom ROMs on our Android devices today.

Source: androidpit.com

Android under Google's ownership



In 2005, Google acquired Android Inc. for around 50 million dollars and the Google Mobile Division was born. The world watched this event with skepticism and curiosity that we can now define as almost historic. How could the company venture into a market already well established by Microsoft, with Windows Mobile, and especially the new Apple iPhone?

Two years later, Google came up with an incredible strategic move where they offered 10 million USD to developers who would make the best Android apps from the first public version of the Android SDK. At this point, Google’s intentions became a lot clearer: they didn’t just want to build another iPhone, but a device with a flexible and adaptable system different to the Apple OS. It would be a software ecosystem as independent as possible from hardware and open to the world of developers, and by doing so, truly embracing the ambitions of Rubin.

The birth of Android



Andy Rubin, Rich Miner, Nick Sears and Chris White created Android in 2003, when they co-founded Android Inc., a company that aimed to develop smarter mobile devices that are more aware of its owner's location and preferences.

Rubin and his start-ups were able to offer a new type of mobile operating system: a simple and functional open source platform (based on the Linux kernel), equipped with a series of tools designed to make life easier for developers, which was ultimately intended on being a system free for anyone who wanted to use it.

This aspect was enough to convince Larry Page and Sergey Brin, co-founders of Google, to jump on this new project, even though they were aware that it could disrupt the company's business strategy of focusing primarily on research services.

What is Android?

What is Android?

Android isn’t a phone, or an application, but is an operating system based on the Linux kernel. No clue what that is? In its most simplistic definition, Linux is an operating system most commonly found on servers and desktop computers. Android isn’t just a version of Linux, due to the many changes found under the hood, but it is related.

So Android is an operating system designed with mobile in mind, the place where your phone’s functions and applications live. Everything you see on the display of your device is a part of the operating system. When you get a call, text message, or email, the OS processes that information and puts it in a readable format.

The Android OS is divided into various version numbers, implying significant jumps in features, operation, and stability, which usually have codenames. So, if you hear someone say Android Lollipop, Marshmallow, Nougat, Oreo or Pie – that is just the name of the version of Android you might have on your device.

Most Android device manufacturers, such as Samsung, HTC, Motorola, Sony, and numerous others, usually have a skin on top of the OS. A skin, or UI overlay, is basically a custom design that adds extra features to your phone, different icons, and other tweaks designed to provide an experience unique to your chosen phone maker. The most popular skins include Samsung TouchWiz, HTC Sense, and LG UI. A phone without any major customizations is generally referred to as “stock Android”, and UIs with only minor changes (such as found with Motorola or Google Pixel phones) are often called near-stock.

Android

Are you ready to learn Android coding? Let's do it!

But, wait. Without knowing what Android is and it's history, it will not be good to learn Android directly. So Android and it's history first😉

Building Your First App

Now you 'll learn how to build your first Android app. You’ll learn how to create an Android project with Android Studio and run a debu...