Wang Jialin trains Android HTML5 cloud computing practices hadoop-An andriod platform development best practice course designed by Wang Jialin

Source: Internet
Author: User
Wang Jia Lin: committed to hardware and software cloud integration, familiar with Android, HTML5, hadoop Tel: 18610086859 Email:




Jia Lin's words:

This course is developed based on years of experience in Android (6 Hardware Products and more than 20 application software) and HTML5 technologies. The course covers the entire course, with historical work cases as the core, after mastering this course, you can at least easily compile Android video clients such as UC Xunlei, Youku and ku6, and mobile clients of Ganji, and have a fundamental understanding of HTML5, finally, the core is the source code analysis of activitymanagerservice, which thoroughly analyzes androidProgramThe mechanism behind the operation deeply realizes the design philosophy and implementation mechanism of the android framework, it aims to help your company develop Android programs with any degree of responsibility and help Android Engineers upgrade to Android architects from a practical perspective.

Course objectives:

1. Familiar with Android architecture philosophy, power sources, and implementation technologies;

2. Be able to develop applications of any type or complexity;

3. Ability to use ndk Technology for programming;

4. Practical Android Testing Technology;

5. Have a fundamental understanding of HTML5

6. Taking the source code analysis of activitymanagerservice as the core, thoroughly analyzes the mechanism behind the android program running, and deeply understands the design philosophy and implementation mechanism of the android framework

Course highlights:

1. reveal the secrets of Android;

2. proficient in four major components;

3. proficient in Android Advanced Interface Programming;

4. proficient in android network programming;

5. proficient in ndk programming;

6. Practical Android testing technology;

7. Understand HTML5;

8. Taking the source code analysis of activitymanagerservice as the core, thoroughly analyzes the mechanism behind Android program running, and deeply understands the design philosophy and implementation mechanism of the android framework

Course Requirements:

Have certain Java Basics

Better understanding of design patterns




Day 1

1.1 androidPhilosophical Thinking (10Minutes)

1. simple shape, rich connotation, and unlimited repetition

2. Android winner

3. Android Core Power Source

4. IOC container and decoupling of Android

5. core differences between Android and IOS

1.2 androidFramework Analysis (20Minutes)

1. Android framework

2. Android Design Mode

3. go deep into IOC of Android

4. Significance of the framework

5. Hardware framework Hal of Android

6. Differences between major Android versions (2.3, 3.0, 4.0)

. What Android and IOS have in common


1.3 Dalvik VM(20Minutes)

1. Dalvik VM features, comparison between Dalvik Vm and JVM

2. What are the root causes and solutions for Memory Distribution and out of memory (out of Memory) Of Dalvik VM?

3. Where Are preload classes, preload resources, and classloader?

4. Dalvik and Java and C/C ++


1.4 androidDevelopment Environment Construction andHelloworld(60Minutes)

1. Java, Eclipse, SDK, ndk, ADT

2. Difficult Problems during Environment setup

3. completely solve the problem of NO 3G Signal

4. Develop helloworld

5. thoroughly analyze the first program

6. Classic model of Android Application Development-a thorough analysis of MVC model

7. Conclusion: master the development steps, precautions, and methods of a complete application.


1.5 androidSend text messages, send MMS, and call (30Minutes)

1. Text message case

2. Send MMS case

3. Call Cases

4. Summary and thinking: Design Concept of Android applications

5. Conclusion and consideration 2: lifecycle of Android applications

1.6 ActivityLifecycle profiling, application lifecycle profiling (30Minutes)

1. Activity lifecycle diagram Analysis

2. Activity lifecycle TestCode

3. nested lifecycle of activity

4. Application Lifecycle Analysis

5. thoughts on how Android manages apps and activities


1.7DifferentActivityBetween calls and data transmission, about ImplicitIntentWonderful analysis, aboutSettypeThe problem is displayed in the solution.IntentAnd implicitIntentUse Case Analysis (30Minutes)

1. Complete analysis of startactivity, startactivityforresult, requestcode, resultcode, finish, and onactivityresult

2. Implicit intent profiling: Action, category, data (Uri (schema, host, PATH), and data type (mimetype ))

3. Problems Caused by settype () and the best solution

4. Display intent and implicit intent usage scenarios, usage meanings, and advantages and disadvantages.

5. thoughts on how to encourage decoupling in Android

1.8 Handler,Logoff,Message,Messagequeue(60Minutes)

1. Android event-driven model

2. In-depth analysis of logoff, messagequeue, hanlder, message and other source code

3. Examples of logoff, messagequeue, hanlder, message, and Multithreading

1.9 asynctaskAsynchronous thread technology (30Minutes)

1. Reasons for using asynctask and Thoughts on asynctask

2. asynctask sample code

3. asynctask source code analysis

4. Application scenarios and precautions for asynchronous thread calls


2.0 androidDebugging (5Minutes)

1. Important Value of debugging

2. debugging practices

2.1 AndroidBasicUIDesign and development skills (30Minutes)

1. uidesign philosophy and development skills

2. Menu practice;

3. Google Map, webview, gallery, spinner, Tab layout, grid view, table layout, relative layout, and linear layout;


2.2 ListviewAsynchronous loading technology (30Minutes)

1. necessity of using listview asynchronous loading technology

2. listview asynchronous loading technical programming practices

2.3 ListviewPaging loading technology (30Minutes)

1. necessity of using listview paging loading technology

2. listview paging loading technical programming practices

2.4 WidgetsProgramming Practice (30Minutes)

1. widget application scenarios

2. widget programming practices


1. application scenarios of tabhost

2. customized tabhost programming practices

3. tabhost source code analysis

2.6Custom title bar (30Minutes)

1. Use Cases for custom title bars

2. Custom title bar programming practices

3. Custom title bar troubleshooting

2.7 Popupwindow(30Minutes)

1. the visual impact of popupwindow on Android apps

2. popupwindow programming practices

3. popupwindow debugging


2.8Performance testing and optimization (30Minutes)

1. How to perform Performance Testing

2. Performance testing practices

3. Attention should be paid to the optimization rules and codes.



Day 2

1.1Image drag Function(30Minutes)
1. application scenarios of the image drag Function
2. Image drag function programming practices

1.2Multi-touch and zoom Functions(30Minutes)
1-point touch and Scaling
2 multi-point touch and zoom programming practices

1.3 androidGraph programming practices (60Minutes)
1. Use layer list to create a dynamic Photo Frame
2. Use statelist to switch between status slices
3. Use Level list to reveal how battery power changes
4. Use transition drawable to achieve dynamic transition
5 Use clip drawable to reveal the horizontal progress bar
6. Use shape drawable to customize the ry


1.4Broadcast recipientBroadcastreceiver, Text message listener case (after receiving the text message, upload it to the server, send it to the specified number, or send it to the specified email )(50Minutes)

1. Analyze the broadcast receiver. Compared with JMS, the IOC principle of the broadcast Receiver

2. SMS listening Android Client

3. Server Creation

4. Upload the received text message to the server through the network

5. Send the received text message to the specified mobile phone number or email

6. broadcastreceiver's life cycle and precautions and 5-Second Life response time Solution


1.5ServiceService, Telephone listener (automatically boot upon each boot, recording and uploading the call to the server )(50Minutes)

1. Detailed analysis of service

2. Build a telephone listening service

3. Use broadcastreceiver to listen for boot events and start the service

4. Upload the audio file to the server

5. Thoughts on the android Security System

1.6 sharedpreferencesRead/write,SharedpreferencesOperation permission, read parameters from different packages, andSource codeAnalysis(10Minutes)

1. Read sharedpreferences

2. Write sharedpreferences

3. sharedpreference operation permission Analysis

4. Read and Write sharedpreference in different packages

5. Source Code Analysis

1.7Data storage and source code analysis in the form of unit testing, logs, and mobile phone internal files(10Minutes)

1. Unit Test

2. Logs

3. Read and Write mobile phone files: openfileinput (), openfileoutput ()

4. Unit Test on file read/write

5. Test the four File Permission Modes

6. Introduction to common file read/write APIs

7. analyze source code


1.8 sdcardRead/write, code reconstruction, source code analysis

1. Build the Business Layer(10Minutes)

2. unit tests at the Business Layer

3. Use activity to call the business layer to read and write sdcard

4. Extract the help class and strictly follow the MVC pattern to refactor the code.

5. Source Code Analysis


1.9 SQLiteManagement tools,CrudOperations, paging, and source code analysis (30Minutes)

1. SQLite Introduction

2. sqliteopenhelper class

3. curd: execsql () and rawquery ()

4. Paging

5. Analyze the source code of getwritabledatabase () and getreadabledatabase () to analyze its principle.

6. In-depth and thorough analysis of execution processes and principles

7. Source Code Analysis


2.0UseAndroidProvidedAPIProceedCrudOperation,ListviewDetailed explanation and source code analysis (10Minutes)

1. Perform crud operations using the built-in Android insert, update, query, and delete operations.

2. analyze source code of insert, update, query, and delete

3. in-depth and detailed analysis of listview, custom view, and custom adapter.

4. Analyze the source code of cursor

5. Analysis and Solution of the "_ id" problem of SQLite and cursor

7. Source Code Analysis


2.1 contentproviderBackground, purpose, and how to buildContentprovider,Urimatcher,ContenturisCotentproviderPerform unit testing and source code analysis (60Minutes)

1. contentprovider Background and Purpose

2. Detailed steps for building contentprovider

3. Complete URI Analysis

4. Analyze urimatcher, contenturis

5. Perform a unit test on the business-Layer Code of contentprovider.

6. Source Code Analysis of contentprovider

2.2Address book-based development(30Minutes)

Address Book database and data table Analysis

Source code analysis of Address Book contentprovider

Obtain all contact information

4. Add a contact

5. How to deal with things when adding Address Book Records



Day 3

1.1In-depthAndroidTesting, coveringActivity,Service,Contentprovider(150Minutes)

1. assertion

Custom message

Static Import

2. In-depth assertion

Touchutils class

Mock object

Mockcontext Overview

Isolatedcontext class

Test operations on files and databases

Mockcontentresolver class

5. base class testcase

Constructor without Parameters

Constructor for passing Parameters

Setname () method

6. base class androidtestcase

Assertactivityrequirespermission () method analysis and practice

Assertreadingcontenturirequirespermission ()


Method Analysis and Practice

Assertwritingcontenturirequirespermission ()


Method Analysis and Practice


Activitymonitor internal Class Analysis and Practice

Instrumentationtestcase class

Launchactivity and launchactivitywithintent



Sendkeys and sendrepeatedkeys Methods

Runtestonuithread help

Activitytestcase class

Scrubclass Method

Activityinstrumentationtestcase2 class


Setup Method

Teardown Method

Testpreconditions Method

Providertestcase2 <t> class



Servicetestcase <t>


Analysis of testsuitebuilder. failedtocreatetests class

14. use external libraries in the test project


1.2Resumable upload (1) multi-thread download tool similar to thunder (applicable to any type of file download)(90Minutes)

1. Principle and flowchart of resumable download with multiple threads

2. http protocol details for File Download

3. multi‑thread download of resumable upload program: design the server and Android

4, android content involves IOC, multithreading, SQLite database, handler, HTTP protocol, cache processing, processing during unexpected shutdown, compiling framework, MVC, service, I/O Stream and code in Android debugging, activity lifecycle, etc.

5. Unit Test

6. Software Debugging


1.3Resumable upload (2) multi‑thread resumable upload (applicable to any type of file upload)(30Minutes)

1. Principle and flowchart of resumable Data Transfer

2. Detailed explanation of the HTTP protocol for uploading files

3. Customize your own File Transfer Protocol

4. Write the server program: File Download and real-time data record, listening mode, garbled problem processing, concurrency problem, hacker Security Problem

5. Client programming: Android memory overflow, socket programming in Android, transmission of large files, and security issues during transmission of large files

6. Unit Test

7. Software Debugging

1.4 androidClient form data upload(60Minutes)

1. Upload Basic Data Types

Upload images and other attachments

Refactor the code into a tool class that can upload any number of fields and any number of Attachments

4. Think about the technical solution of local offline storage/online upload



Day 4

1.1 androidJava and Javascript in webview communicate with each other(30Minutes)

1. Create a New World on the android Interface

Java calls Javascript

Javascript calls Java


1.2: C in Android ndk calls Java through JNI (60 minutes)

1. The local C code calls the method in Java.

2. The local C code obtains the property value of the Java object.

3. Calls with local C code in multiple classes

4. Create a Java object in the local code

5. Handling exceptions


1.3: Communication between Java and C ++ in Android ndk (30 minutes)

1 Java code calls C ++ code

2 C ++ Code call Java code


1.4: Multithreading programming in ndk (30 minutes)

1. deeply analyze the running mechanism and process of Java, Dalvik Vm, and C/C ++

2. Allocate threads in Java to call C/C ++ Functions

3 C/C ++ local code calls Java functions through the allocation thread

1.5: Android mobile phone function development(20Minutes)

Application control hardware start point: getsystemservice function profiling;

Development of some mobile phone hardware functions, calls to Android underlying methods, etc.


1.6Browser development and customization(10Minutes)

1 Analysis of core principles of browser customization and development

2 Analysis of technical means for browser customization and development

3 browser customization and development practices


Age: device, browser, Cloud(10Minutes)

1 who is the most important in the HTML5 era?

2 HTML5 and Device

3 HTML5 and cloud

4 What dominated the HTML5 era?


1.8 androidSecrets behind application running --- windowmanagerservice source code analysis(150Minutes)

Where is the main entry of the android application?

2. What is the process for activitythread to become the main thread of the application?

3. the secrets behind logoff, messagequeue, and handler;

4 Android activity, service, provider, worker er START process source code analysis





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: 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.