Every application must have an AndroidManifest.xml
file and the file must have exactly that name. Its location is in its root
directory, and, in each module, it contains essential information about your application to the Android system. The manifest
file is responsible for defining the following:
- Naming a package for the application
- Describing the components of the application--activities (screens), services, broadcast receivers (messages), and content providers (database access)
- Permissions that application must have in order to access protected parts of the Android API
- Permissions that other applications must have in order to interact with the application's components, such as content providers
The following code snippet shows the general structure of the manifest
file and elements that it can contain:
<?xml version="1.0" encoding="utf-8"?> <manifest> <uses-permission /> <permission /> <permission-tree /> <permission-group /> <instrumentation /> <uses-sdk /> <uses-configuration /> <uses-feature /> <supports-screens /> <compatible-screens /> <supports-gl-texture /> <application> <activity> <intent-filter> <action /> <category /> <data /> </intent-filter> <meta-data /> </activity> <activity-alias> <intent-filter> . . . </intent-filter> <meta-data /> </activity-alias> <service> <intent-filter> . . . </intent-filter> <meta-data/> </service> <receiver> <intent-filter> . . . </intent-filter> <meta-data /> </receiver> <provider> <grant-uri-permission /> <meta-data /> <path-permission /> </provider> <uses-library /> </application> </manifest>