0x00 Preface
I started to learn about Android as early as I could go back to sophomore. At that time nothing, all want to learn, so I went to choose an Android development class. The class was on the evening of Wednesday, from 7:30 to 10 o ' Day. More than 200 people in the big classroom, the first class only went to less than 20 people, I was fortunate enough to become one of those 20 people. After listening to the first Class I have not been to, the next day would have wanted to retreat, the results to forget, missed the return lesson time, so the course finally got 0 points. Because of this connection, I didn't have a crush on Android at first. But I didn't expect to come across it again. Is the end of the previous period of the completion of the set. I'm going to start with a scratch image recognition and have to develop an Android application. So really is under the coolie go to the library looking for a book to see, that time pick seems to be "proficient Android4.0", really read a few pages to give up, completely see upset ... Fortunately, the instructor did not want me to force the development of the image recognition of the Android application, and finally reluctantly over the set. Later, I went into the lab, ran into Android, and had to learn the reverse of Android. Alas, perhaps this is the legendary fate bar ... Since with Android so predestined, I will strive to be a qualified Androider bar. I hope I can make some achievements in Android security
0x01 Android Development Environment
1.JDK
JDK download installation details are visible http://jingyan.baidu.com/article/3c343ff70bc6ea0d377963df.html
2.Android Studio
Download address for Android Studio: http://www.android-studio.org/
0x02 Android Basics
1. Android System Architecture
Android can be divided into four-tier architecture: Linux kernel layer, system running layer, application framework layer and application layer
1.1.1 Linux kernel Layer
The Android system is based on the Linux kernel, and the Linux kernel layer provides the underlying drivers for the various hardware of the Android device.
1.1.2 System Runtime Layer
This layer is mainly the C/s + + library and the Android Run-time Library, providing the main feature support and Dalvik virtual machine for the Android system.
1.1.3 Application Framework Layer
This layer primarily provides the various APIs that you might use to build your application.
1.1.4 Application Layer
The layer is the layer that uses the mobile phone's various applications at ordinary times.
The Android system architecture diagram is as follows: (from Baidu Encyclopedia)
2. Android Four components
2.1.1 Activities (activity)
Android's activity is the façade of the Android program, where everything you see in the application is in action.
2.1.2 Services (Service)
Service is an application component that does not have a user interface to perform time-consuming operations after the day after tomorrow.
2.1.3 Broadcast receiver (broadcast Receiver)
Broadcast receivers allow applications to receive send broadcast messages.
2.1.4 Content provider (Provider)
Content providers provide the possibility of sharing data between applications.
(Write so much first, the above point and so on after the study depth and then to supplement ~)