Home

AndroidManifestxml

AndroidManifest.xml is the central configuration file for an Android application. It declares the app’s package name, its components, the permissions it requests, and the hardware or software features it requires. The file is located at the root of the project and is packaged into the APK, where the Android system uses it during installation and runtime to enforce security and enable component communication.

The manifest uses XML syntax. The root element is manifest, with attributes such as package, android:versionCode,

Within the application element, components include activities, services, broadcast receivers, and content providers. Activities may declare

Additional manifest declarations include uses-feature to declare required hardware features, supports-screens and compatible-screen attributes for device

During development, the Android Gradle plugin can merge manifests from multiple modules and libraries, resolving conflicts

and
android:versionName.
The
uses-sdk
element
specifies
the
minimum
and
target
SDK
versions.
The
uses-permission
elements
declare
permissions
the
app
requests
from
the
user
or
other
apps.
The
application
element
contains
the
app’s
components,
metadata,
and
global
attributes
like
label,
icon,
and
theme.
intent-filters
that
define
how
they
can
be
started;
the
launcher
activity
is
identified
by
an
intent-filter
with
action
MAIN
and
category
LAUNCHER.
Other
components
can
be
exported
or
restricted
with
permissions.
Services
run
in
the
background,
receivers
handle
broadcast
events,
and
providers
expose
data
to
other
apps.
compatibility,
and
metadata
elements
for
extra
information.
Permissions
are
categorized
(normal,
dangerous,
signature)
and,
for
dangerous
permissions,
runtime
approval
is
typically
required
starting
from
newer
Android
versions.
and
applying
placeholders.
A
typical
Gradle
project
places
the
manifest
at
app/src/main/AndroidManifest.xml.
The
manifest
is
essential
for
installation,
component
wiring,
and
enforcing
app
permissions.