The AndroidManifest.xml File
Every application must have an AndroidManifest.xml file (with precisely that name) in its root directory. The manifest presents essential information about the application to the Android system, information the system must have before it can run any of the application's code. Among other things, the manifest does the following:
It names the Java package for the application. The package name serves as a unique identifier for the application.
It describes the components of the applicationthe activities, services, broadcast receivers, and content providers that the application is composed of. It names the classes that implement each of the components and publishes their capabilities (for example, which Intent messages they can handle). These declarations let the Android system know what the components are and under what conditions they can be launched.
【它描述了应用由哪几个组件，如活动、服务、广播接受者、内容提供者，描述了实现这些组件的Java类，并列出他们的功能，比如说明他们可以处理哪个 Intent 信息。以上这些声明就使安卓系统能够知道需要处理哪些东西，以及在什么条件下处理。】
It determines which processes will host application components.
【【 高级】AndroidManifest.xml 文件允许我们决定应用或其中的组件需要跑在哪些进程中。 】
It declares which permissions the application must have in order to access protected parts of the API and interact with other applications.
It also declares the permissions that others are required to have in order to interact with the application's components.
It lists the Instrumentation classes that provide profiling and other information as the application is running. These declarations are present in the manifest only while the application is being developed and tested; they're removed before the application is published.
【【 高级】 AndroidManifest.xml 文件允许开发者使用Instrumentation 类（监测类）获得应用运行的信息，一般是开发或测试阶段使用，发布时将会被去掉。 】
It declares the minimum level of the Android API that the application requires.
It lists the libraries that the application must be linked against.
【【 高级】 AndroidManifest.xml 文件会列出应用需要链接的外部库。 】