Learning roadmap for the Android Development series

Source: Internet
Author: User

The previous 3 blogs have simply introduced the Android development process and written a simple demo to understand the Android development environment and some background knowledge.

Next, this blog does not intend to continue to learn the details of Android development, first stop, clear the next learning goals and learning route.

First, the basic understanding of Android development

1, Android native development is based on the Java language, because I am good at C #, so the Java language itself is not very skilled, the need to strengthen the Java Language Foundation of the exercise, this piece I will be interspersed with specific knowledge points of practice, and in the necessary places to give a C # The contrast of language (in fact basically at the grammatical level is similar, just need to tidy up a bit).

2, Android is essentially just a client, so is based on the C/S mode of development (b/S is in essence, is a kind of a special client, the browser acts as the role of clients), to the server-side communication needs through HTTP, TCP/IP and other protocols. So we can get the data through HTTP GET or post action request service side, also can use socket (TCP/UDP) to obtain data, also have common webservice, but these all need the support of the service side program. Although I have also done Java Web Development, I know that there is a servlet in Java (which corresponds to the general handler Ashx in ASP.) as a server-side program, but after all I'm using the first programming language is C #, so I'll use C # A dedicated network communication application framework WCF or lightweight Web API as a service-side support (the only drawback is that it can only be run on the Windows platform, but in the future it is possible to implement so-called cross-platform).

3, the development of Android will also use the database, not Oracle, SQL Server, MySQL, these need to install on the server; Access is a file-based database provided by Microsoft and does not support Android (perhaps later). Maybe someone would say that you can use properties, XML and other files to store data? Of course, but after all, it's a file, not a database, not a basic database management function, so we need a file-based database, and support Android system, SQLite is the current popular file-type database.

4, the current program on the UI part of the increasingly high requirements. User evaluation of an application is not good, in addition to usability, mainly depends on your UI is not good looking, the use is not very humane. The user can not understand what the technology behind, he saw is the interface. In the development of Android mainly through the style, stickers and other means to beautify the interface.

Second, the Android frame composition


From bottom to top, in order:

1. Linux kernel layer

Android is the Linux operating system, the Linux kernel provides the basic functions of memory management, process management, network protocol, etc.

2, the system run the library layer

Includes a system library and two parts of the Android runtime. For example, Surface Manager in the System Library is responsible for managing the display, media framework for multimedia functions, SQLite being a small RDBMS, and so on. What is more important is the Android Runtime section, which includes the core library and the Dalvik virtual machine (Google has designed a Java virtual machine instead of using Oracle's JVM to prevent copyright issues).

3. Application Framework Layer

Provides a set of ready-made components to help programmers simplify development

4. Application Layer

is an application that already exists in the Android system

As we know, most of the time we are developing based on the application framework layer and the system runtime layer.

Third, the basic steps of Android development

Aside from requirements analysis, architecture design, and so on, the general process of developing these software, narrowing it down to the Android development itself, requires a few steps:

1. Build layout file, how many interfaces are drawn, and then design and beautify each interface through style and texture

2. Build the Acitivity file and load the corresponding layout file in the OnCreate method. Implementing the code-writing part of the program

3. Register activity in the Androidmanifest.xml manifest file to add various permissions required for the program to run

4. Package release apk, self-install (now popular scan QR code, get then install)

To summarize: The next Android Learning I will focus on the Android client program section, on the server side I will use already mastered. NET technology implementations (such as WCF, Web API, etc.). If the learning process involves the underlying knowledge of the operating system, it will be appropriate to understand. The goal is to master the Android app development section.

Learning roadmap for the Android Development series

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.