You've already forked android_translation_layer
mirror of
https://gitlab.com/android_translation_layer/android_translation_layer.git
synced 2025-10-27 11:48:10 -07:00
2203 lines
125 KiB
XML
2203 lines
125 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!--
|
|
/* Copyright 2006, The Android Open Source Project
|
|
**
|
|
** Licensed under the Apache License, Version 2.0 (the "License");
|
|
** you may not use this file except in compliance with the License.
|
|
** You may obtain a copy of the License at
|
|
**
|
|
** http://www.apache.org/licenses/LICENSE-2.0
|
|
**
|
|
** Unless required by applicable law or agreed to in writing, software
|
|
** distributed under the License is distributed on an "AS IS" BASIS,
|
|
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
** See the License for the specific language governing permissions and
|
|
** limitations under the License.
|
|
*/
|
|
-->
|
|
<resources>
|
|
<!-- **************************************************************** -->
|
|
<!-- These are the attributes used in AndroidManifest.xml. -->
|
|
<!-- **************************************************************** -->
|
|
<eat-comment />
|
|
|
|
<!-- The overall theme to use for an activity. Use with either the
|
|
application tag (to supply a default theme for all activities) or
|
|
the activity tag (to supply a specific theme for that activity).
|
|
|
|
<p>This automatically sets
|
|
your activity's Context to use this theme, and may also be used
|
|
for "starting" animations prior to the activity being launched (to
|
|
better match what the activity actually looks like). It is a reference
|
|
to a style resource defining the theme. If not set, the default
|
|
system theme will be used. -->
|
|
<attr name="theme" format="reference" />
|
|
|
|
<!-- A user-legible name for the given item. Use with the
|
|
application tag (to supply a default label for all application
|
|
components), or with the activity, receiver, service, or instrumentation
|
|
tag (to supply a specific label for that component). It may also be
|
|
used with the intent-filter tag to supply a label to show to the
|
|
user when an activity is being selected based on a particular Intent.
|
|
|
|
<p>The given label will be used wherever the user sees information
|
|
about its associated component; for example, as the name of a
|
|
main activity that is displayed in the launcher. You should
|
|
generally set this to a reference to a string resource, so that
|
|
it can be localized, however it is also allowed to supply a plain
|
|
string for quick and dirty programming. -->
|
|
<attr name="label" format="reference|string" />
|
|
|
|
<!-- A Drawable resource providing a graphical representation of its
|
|
associated item. Use with the
|
|
application tag (to supply a default icon for all application
|
|
components), or with the activity, receiver, service, or instrumentation
|
|
tag (to supply a specific icon for that component). It may also be
|
|
used with the intent-filter tag to supply an icon to show to the
|
|
user when an activity is being selected based on a particular Intent.
|
|
|
|
<p>The given icon will be used to display to the user a graphical
|
|
representation of its associated component; for example, as the icon
|
|
for main activity that is displayed in the launcher. This must be
|
|
a reference to a Drawable resource containing the image definition. -->
|
|
<attr name="icon" format="reference" />
|
|
|
|
<!-- A Drawable resource providing an extended graphical banner for its
|
|
associated item. Use with the application tag (to supply a default
|
|
banner for all application activities), or with the activity, tag to
|
|
supply a banner for a specific activity.
|
|
|
|
<p>The given banner will be used to display to the user a graphical
|
|
representation of an activity in the Leanback application launcher.
|
|
Since banners are displayed only in the Leanback launcher, they should
|
|
only be used with activities (and applications) that support Leanback
|
|
mode. These are activities that handle Intents of category
|
|
{@link android.content.Intent#CATEGORY_LEANBACK_LAUNCHER
|
|
Intent.CATEGORY_LEANBACK_LAUNCHER}.
|
|
<p>This must be a reference to a Drawable resource containing the image definition. -->
|
|
<attr name="banner" format="reference" />
|
|
|
|
<!-- A Drawable resource providing an extended graphical logo for its
|
|
associated item. Use with the application tag (to supply a default
|
|
logo for all application components), or with the activity, receiver,
|
|
service, or instrumentation tag (to supply a specific logo for that
|
|
component). It may also be used with the intent-filter tag to supply
|
|
a logo to show to the user when an activity is being selected based
|
|
on a particular Intent.
|
|
|
|
<p>The given logo will be used to display to the user a graphical
|
|
representation of its associated component; for example as the
|
|
header in the Action Bar. The primary differences between an icon
|
|
and a logo are that logos are often wider and more detailed, and are
|
|
used without an accompanying text caption. This must be a reference
|
|
to a Drawable resource containing the image definition. -->
|
|
<attr name="logo" format="reference" />
|
|
|
|
<!-- Name of the activity to be launched to manage application's space on
|
|
device. The specified activity gets automatically launched when the
|
|
application's space needs to be managed and is usually invoked
|
|
through user actions. Applications can thus provide their own custom
|
|
behavior for managing space for various scenarios like out of memory
|
|
conditions. This is an optional attribute and
|
|
applications can choose not to specify a default activity to
|
|
manage space. -->
|
|
<attr name="manageSpaceActivity" format="string" />
|
|
|
|
<!-- Option to let applications specify that user data can/cannot be
|
|
cleared. This flag is turned on by default.
|
|
<em>This attribute is usable only by applications
|
|
included in the system image. Third-party apps cannot use it.</em> -->
|
|
<attr name="allowClearUserData" format="boolean" />
|
|
|
|
<!-- Option to let applications specify that user data should
|
|
never be encrypted if an Encrypted File System solution
|
|
is enabled. Specifically, this is an "opt-out" feature, meaning
|
|
that, by default, user data will be encrypted if the EFS feature
|
|
is enabled. -->
|
|
<attr name="neverEncrypt" format="boolean" />
|
|
|
|
<!-- Option to indicate this application is only for testing purposes.
|
|
For example, it may expose functionality or data outside of itself
|
|
that would cause a security hole, but is useful for testing. This
|
|
kind of application can not be installed without the
|
|
INSTALL_ALLOW_TEST flag, which means only through adb install. -->
|
|
<attr name="testOnly" format="boolean" />
|
|
|
|
<!-- A unique name for the given item. This must use a Java-style naming
|
|
convention to ensure the name is unique, for example
|
|
"com.mycompany.MyName". -->
|
|
<attr name="name" format="string" />
|
|
|
|
<!-- Specify a permission that a client is required to have in order to
|
|
use the associated object. If the client does not hold the named
|
|
permission, its request will fail. See the
|
|
<a href="{@docRoot}guide/topics/security/security.html">Security and Permissions</a>
|
|
document for more information on permissions. -->
|
|
<attr name="permission" format="string" />
|
|
|
|
<!-- A specific {@link android.R.attr#permission} name for read-only
|
|
access to a {@link android.content.ContentProvider}. See the
|
|
<a href="{@docRoot}guide/topics/security/security.html">Security and Permissions</a>
|
|
document for more information on permissions. -->
|
|
<attr name="readPermission" format="string" />
|
|
|
|
<!-- A specific {@link android.R.attr#permission} name for write
|
|
access to a {@link android.content.ContentProvider}. See the
|
|
<a href="{@docRoot}guide/topics/security/security.html">Security and Permissions</a>
|
|
document for more information on permissions. -->
|
|
<attr name="writePermission" format="string" />
|
|
|
|
<!-- If true, the {@link android.content.Context#grantUriPermission
|
|
Context.grantUriPermission} or corresponding Intent flags can
|
|
be used to allow others to access specific URIs in the content
|
|
provider, even if they do not have an explicit read or write
|
|
permission. If you are supporting this feature, you must be
|
|
sure to call {@link android.content.Context#revokeUriPermission
|
|
Context.revokeUriPermission} when URIs are deleted from your
|
|
provider.-->
|
|
<attr name="grantUriPermissions" format="boolean" />
|
|
|
|
<!-- Characterizes the potential risk implied in a permission and
|
|
indicates the procedure the system should follow when determining
|
|
whether to grant the permission to an application requesting it. {@link
|
|
android.Manifest.permission Standard permissions} have a predefined and
|
|
permanent protectionLevel. If you are creating a custom permission in an
|
|
application, you can define a protectionLevel attribute with one of the
|
|
values listed below. If no protectionLevel is defined for a custom
|
|
permission, the system assigns the default ("normal"). -->
|
|
<attr name="protectionLevel">
|
|
<!-- A lower-risk permission that gives an application access to isolated
|
|
application-level features, with minimal risk to other applications,
|
|
the system, or the user. The system automatically grants this type
|
|
of permission to a requesting application at installation, without
|
|
asking for the user's explicit approval (though the user always
|
|
has the option to review these permissions before installing). -->
|
|
<flag name="normal" value="0" />
|
|
<!-- A higher-risk permission that would give a requesting application
|
|
access to private user data or control over the device that can
|
|
negatively impact the user. Because this type of permission
|
|
introduces potential risk, the system may not automatically
|
|
grant it to the requesting application. For example, any dangerous
|
|
permissions requested by an application may be displayed to the
|
|
user and require confirmation before proceeding, or some other
|
|
approach may be taken to avoid the user automatically allowing
|
|
the use of such facilities. -->
|
|
<flag name="dangerous" value="1" />
|
|
<!-- A permission that the system is to grant only if the requesting
|
|
application is signed with the same certificate as the application
|
|
that declared the permission. If the certificates match, the system
|
|
automatically grants the permission without notifying the user or
|
|
asking for the user's explicit approval. -->
|
|
<flag name="signature" value="2" />
|
|
<!-- A permission that the system is to grant only to packages in the
|
|
Android system image <em>or</em> that are signed with the same
|
|
certificates. Please avoid using this option, as the
|
|
signature protection level should be sufficient for most needs and
|
|
works regardless of exactly where applications are installed. This
|
|
permission is used for certain special situations where multiple
|
|
vendors have applications built in to a system image which need
|
|
to share specific features explicitly because they are being built
|
|
together. -->
|
|
<flag name="signatureOrSystem" value="3" />
|
|
<!-- Additional flag from base permission type: this permission can also
|
|
be granted to any applications installed as privileged apps on the system image.
|
|
Please avoid using this option, as the
|
|
signature protection level should be sufficient for most needs and
|
|
works regardless of exactly where applications are installed. This
|
|
permission flag is used for certain special situations where multiple
|
|
vendors have applications built in to a system image which need
|
|
to share specific features explicitly because they are being built
|
|
together. -->
|
|
<flag name="privileged" value="0x10" />
|
|
<!-- Old synonym for "privileged". -->
|
|
<flag name="system" value="0x10" />
|
|
<!-- Additional flag from base permission type: this permission can also
|
|
(optionally) be granted to development applications. -->
|
|
<flag name="development" value="0x20" />
|
|
<!-- Additional flag from base permission type: this permission is closely
|
|
associated with an app op for controlling access. -->
|
|
<flag name="appop" value="0x40" />
|
|
<!-- Additional flag from base permission type: this permission can be automatically
|
|
granted to apps that target API levels below
|
|
{@link android.os.Build.VERSION_CODES#M} (before runtime permissions
|
|
were introduced). -->
|
|
<flag name="pre23" value="0x80" />
|
|
<!-- Additional flag from base permission type: this permission can be automatically
|
|
granted to system apps that install packages. -->
|
|
<flag name="installer" value="0x100" />
|
|
<!-- Additional flag from base permission type: this permission can be automatically
|
|
granted to system apps that verify packages. -->
|
|
<flag name="verifier" value="0x200" />
|
|
<!-- Additional flag from base permission type: this permission can be automatically
|
|
granted any application pre-installed on the system image (not just privileged
|
|
apps). -->
|
|
<flag name="preinstalled" value="0x400" />
|
|
</attr>
|
|
|
|
<!-- Flags indicating more context for a permission group. -->
|
|
<attr name="permissionGroupFlags">
|
|
<!-- Set to indicate that this permission group contains permissions
|
|
protecting access to some information that is considered
|
|
personal to the user (such as contacts, e-mails, etc). -->
|
|
<flag name="personalInfo" value="0x0001" />
|
|
</attr>
|
|
|
|
<!-- Flags indicating more context for a permission. -->
|
|
<attr name="permissionFlags">
|
|
<!-- Set to indicate that this permission allows an operation that
|
|
may cost the user money. Such permissions may be highlighted
|
|
when shown to the user with this additional information. -->
|
|
<flag name="costsMoney" value="0x0001" />
|
|
<!-- Additional flag from base permission type: this permission is hidden
|
|
and should not show in the UI. -->
|
|
<flag name="hidden" value="0x2" />
|
|
</attr>
|
|
|
|
<!-- Specified the name of a group that this permission is associated
|
|
with. The group must have been defined with the
|
|
{@link android.R.styleable#AndroidManifestPermissionGroup permission-group} tag. -->
|
|
<attr name="permissionGroup" format="string" />
|
|
|
|
<!-- Specify the name of a user ID that will be shared between multiple
|
|
packages. By default, each package gets its own unique user-id.
|
|
By setting this value on two or more packages, each of these packages
|
|
will be given a single shared user ID, so they can for example run
|
|
in the same process. Note that for them to actually get the same
|
|
user ID, they must also be signed with the same signature. -->
|
|
<attr name="sharedUserId" format="string" />
|
|
|
|
<!-- Specify a label for the shared user UID of this package. This is
|
|
only used if you have also used android:sharedUserId. This must
|
|
be a reference to a string resource; it can not be an explicit
|
|
string. -->
|
|
<attr name="sharedUserLabel" format="reference" />
|
|
|
|
<!-- Internal version code. This is the number used to determine whether
|
|
one version is more recent than another: it has no other meaning than
|
|
that higher numbers are more recent. You could use this number to
|
|
encode a "x.y" in the lower and upper 16 bits, make it a build
|
|
number, simply increase it by one each time a new version is
|
|
released, or define it however else you want, as long as each
|
|
successive version has a higher number. This is not a version
|
|
number generally shown to the user, that is usually supplied
|
|
with {@link android.R.attr#versionName}. When an app is delivered
|
|
as multiple split APKs, each APK must have the exact same versionCode. -->
|
|
<attr name="versionCode" format="integer" />
|
|
|
|
<!-- Internal revision code. This number is the number used to determine
|
|
whether one APK is more recent than another: it has no other meaning
|
|
than that higher numbers are more recent. This value is only meaningful
|
|
when the two {@link android.R.attr#versionCode} values are already
|
|
identical. When an app is delivered as multiple split APKs, each
|
|
APK may have a different revisionCode value. -->
|
|
<attr name="revisionCode" format="integer" />
|
|
|
|
<!-- The text shown to the user to indicate the version they have. This
|
|
is used for no other purpose than display to the user; the actual
|
|
significant version number is given by {@link android.R.attr#versionCode}. -->
|
|
<attr name="versionName" format="string" />
|
|
|
|
<!-- Flag to control special persistent mode of an application. This should
|
|
not normally be used by applications; it requires that the system keep
|
|
your application running at all times. -->
|
|
<attr name="persistent" format="boolean" />
|
|
|
|
<!-- Flag to specify if this application needs to be present for all users. Only pre-installed
|
|
applications can request this feature. Default value is false. -->
|
|
<attr name="requiredForAllUsers" format="boolean" />
|
|
|
|
<!-- Flag indicating whether the application can be debugged, even when
|
|
running on a device that is running in user mode. -->
|
|
<attr name="debuggable" format="boolean" />
|
|
|
|
<!-- Flag indicating whether the application requests the VM to operate in
|
|
the safe mode. -->
|
|
<attr name="vmSafeMode" format="boolean" />
|
|
|
|
<!-- <p>Flag indicating whether the application's rendering should be hardware
|
|
accelerated if possible. This flag is turned on by default for applications
|
|
that are targeting {@link android.os.Build.VERSION_CODES#ICE_CREAM_SANDWICH}
|
|
or later.</p>
|
|
<p>This flag can be set on the application and any activity declared
|
|
in the manifest. When enabled for the application, each activity is
|
|
automatically assumed to be hardware accelerated. This flag can be
|
|
overridden in the activity tags, either turning it off (if on for the
|
|
application) or on (if off for the application.)</p>
|
|
<p>When this flag is turned on for an activity (either directly or via
|
|
the application tag), every window created from the activity, including
|
|
the activity's own window, will be hardware accelerated, if possible.</p>
|
|
<p>Please refer to the documentation of
|
|
{@link android.view.WindowManager.LayoutParams#FLAG_HARDWARE_ACCELERATED}
|
|
for more information on how to control this flag programmatically.</p> -->
|
|
<attr name="hardwareAccelerated" format="boolean" />
|
|
|
|
<!-- Flag indicating whether the given application component is available
|
|
to other applications. If false, it can only be accessed by
|
|
applications with its same user id (which usually means only by
|
|
code in its own package). If true, it can be invoked by external
|
|
entities, though which ones can do so may be controlled through
|
|
permissions. The default value is false for activity, receiver,
|
|
and service components that do not specify any intent filters; it
|
|
is true for activity, receiver, and service components that do
|
|
have intent filters (implying they expect to be invoked by others
|
|
who do not know their particular component name) and for all
|
|
content providers. -->
|
|
<attr name="exported" format="boolean" />
|
|
|
|
<!-- A boolean flag used to indicate if an application is a Game or not.
|
|
<p>This information can be used by the system to group together
|
|
applications that are classified as games, and display them separately
|
|
from the other applications. -->
|
|
<attr name="isGame" format="boolean" />
|
|
|
|
<!-- If set to true, a single instance of this component will run for
|
|
all users. That instance will run as user 0, the default/primary
|
|
user. When the app running is in processes for other users and interacts
|
|
with this component (by binding to a service for example) those processes will
|
|
always interact with the instance running for user 0. Enabling
|
|
single user mode forces "exported" of the component to be false, to
|
|
help avoid introducing multi-user security bugs. This feature is only
|
|
available to applications built in to the system image; you must hold the
|
|
permission INTERACT_ACROSS_USERS in order
|
|
to use this feature. This flag can only be used with services,
|
|
receivers, and providers; it can not be used with activities. -->
|
|
<attr name="singleUser" format="boolean" />
|
|
|
|
<!-- Specify a specific process that the associated code is to run in.
|
|
Use with the application tag (to supply a default process for all
|
|
application components), or with the activity, receiver, service,
|
|
or provider tag (to supply a specific icon for that component).
|
|
|
|
<p>Application components are normally run in a single process that
|
|
is created for the entire application. You can use this tag to modify
|
|
where they run. If the process name begins with a ':' character,
|
|
a new process private to that application will be created when needed
|
|
to run that component (allowing you to spread your application across
|
|
multiple processes). If the process name begins with a lower-case
|
|
character, the component will be run in a global process of that name,
|
|
provided that you have permission to do so, allowing multiple
|
|
applications to share one process to reduce resource usage. -->
|
|
<attr name="process" format="string" />
|
|
|
|
<!-- Specify a task name that activities have an "affinity" to.
|
|
Use with the application tag (to supply a default affinity for all
|
|
activities in the application), or with the activity tag (to supply
|
|
a specific affinity for that component).
|
|
|
|
<p>The default value for this attribute is the same as the package
|
|
name, indicating that all activities in the manifest should generally
|
|
be considered a single "application" to the user. You can use this
|
|
attribute to modify that behavior: either giving them an affinity
|
|
for another task, if the activities are intended to be part of that
|
|
task from the user's perspective, or using an empty string for
|
|
activities that have no affinity to a task. -->
|
|
<attr name="taskAffinity" format="string" />
|
|
|
|
<!-- Specify that an activity can be moved out of a task it is in to
|
|
the task it has an affinity for when appropriate. Use with the
|
|
application tag (to supply a default for all activities in the
|
|
application), or with an activity tag (to supply a specific
|
|
setting for that component).
|
|
|
|
<p>Normally when an application is started, it is associated with
|
|
the task of the activity that started it and stays there for its
|
|
entire lifetime. You can use the allowTaskReparenting feature to force an
|
|
activity to be re-parented to a different task when the task it is
|
|
in goes to the background. Typically this is used to cause the
|
|
activities of an application to move back to the main task associated
|
|
with that application. The activity is re-parented to the task
|
|
with the same {@link android.R.attr#taskAffinity} as it has. -->
|
|
<attr name="allowTaskReparenting" format="boolean" />
|
|
|
|
<!-- Declare that this application may use cleartext traffic, such as HTTP rather than HTTPS;
|
|
WebSockets rather than WebSockets Secure; XMPP, IMAP, STMP without STARTTLS or TLS.
|
|
Defaults to true. If set to false {@code false}, the application declares that it does not
|
|
intend to use cleartext network traffic, in which case platform components (e.g. HTTP
|
|
stacks, {@code DownloadManager}, {@code MediaPlayer}) will refuse applications's requests
|
|
to use cleartext traffic. Third-party libraries are encouraged to honor this flag as well.
|
|
-->
|
|
<attr name="usesCleartextTraffic" format="boolean" />
|
|
|
|
<!-- Declare that code from this application will need to be loaded into other
|
|
applications' processes. On devices that support multiple instruction sets,
|
|
this implies the code might be loaded into a process that's using any of the devices
|
|
supported instruction sets.
|
|
|
|
<p> The system might treat such applications specially, for eg., by
|
|
extracting the application's native libraries for all supported instruction
|
|
sets or by compiling the application's dex code for all supported instruction
|
|
sets. -->
|
|
<attr name="multiArch" format ="boolean" />
|
|
|
|
<!-- Specify whether a component is allowed to have multiple instances
|
|
of itself running in different processes. Use with the activity
|
|
and provider tags.
|
|
|
|
<p>Normally the system will ensure that all instances of a particular
|
|
component are only running in a single process. You can use this
|
|
attribute to disable that behavior, allowing the system to create
|
|
instances wherever they are used (provided permissions allow it).
|
|
This is most often used with content providers, so that instances
|
|
of a provider can be created in each client process, allowing them
|
|
to be used without performing IPC. -->
|
|
<attr name="multiprocess" format="boolean" />
|
|
|
|
<!-- Specify whether an activity should be finished when its task is
|
|
brought to the foreground by relaunching from the home screen.
|
|
|
|
<p>If both this option and {@link android.R.attr#allowTaskReparenting} are
|
|
specified, the finish trumps the affinity: the affinity will be
|
|
ignored and the activity simply finished. -->
|
|
<attr name="finishOnTaskLaunch" format="boolean" />
|
|
|
|
<!-- Specify whether an activity should be finished when a "close system
|
|
windows" request has been made. This happens, for example, when
|
|
the home key is pressed, when the device is locked, when a system
|
|
dialog showing recent applications is displayed, etc. -->
|
|
<attr name="finishOnCloseSystemDialogs" format="boolean" />
|
|
|
|
<!-- Specify whether an activity's task should be cleared when it
|
|
is re-launched from the home screen. As a result, every time the
|
|
user starts the task, they will be brought to its root activity,
|
|
regardless of whether they used BACK or HOME to last leave it.
|
|
This flag only applies to activities that
|
|
are used to start the root of a new task.
|
|
|
|
<p>An example of the use of this flag would be for the case where
|
|
a user launches activity A from home, and from there goes to
|
|
activity B. They now press home, and then return to activity A.
|
|
Normally they would see activity B, since that is what they were
|
|
last doing in A's task. However, if A has set this flag to true,
|
|
then upon going to the background all of the tasks on top of it (B
|
|
in this case) are removed, so when the user next returns to A they
|
|
will restart at its original activity.
|
|
|
|
<p>When this option is used in conjunction with
|
|
{@link android.R.attr#allowTaskReparenting}, the allowTaskReparenting trumps the
|
|
clear. That is, all activities above the root activity of the
|
|
task will be removed: those that have an affinity will be moved
|
|
to the task they are associated with, otherwise they will simply
|
|
be dropped as described here. -->
|
|
<attr name="clearTaskOnLaunch" format="boolean" />
|
|
|
|
<!-- Specify whether an activity should be kept in its history stack.
|
|
If this attribute is set, then as soon as the user navigates away
|
|
from the activity it will be finished and they will no longer be
|
|
able to return to it. -->
|
|
<attr name="noHistory" format="boolean" />
|
|
|
|
<!-- Specify whether an acitivty's task state should always be maintained
|
|
by the system, or if it is allowed to reset the task to its initial
|
|
state in certain situations.
|
|
|
|
<p>Normally the system will reset a task (remove all activities from
|
|
the stack and reset the root activity) in certain situations when
|
|
the user re-selects that task from the home screen. Typically this
|
|
will be done if the user hasn't visited that task for a certain
|
|
amount of time, such as 30 minutes.
|
|
|
|
<p>By setting this attribute, the user will always return to your
|
|
task in its last state, regardless of how they get there. This is
|
|
useful, for example, in an application like the web browser where there
|
|
is a lot of state (such as multiple open tabs) that the application
|
|
would not like to lose. -->
|
|
<attr name="alwaysRetainTaskState" format="boolean" />
|
|
|
|
<!-- Indicates that an Activity does not need to have its freeze state
|
|
(as returned by {@link android.app.Activity#onSaveInstanceState}
|
|
retained in order to be restarted. Generally you use this for activities
|
|
that do not store any state. When this flag is set, if for some reason
|
|
the activity is killed before it has a chance to save its state,
|
|
then the system will not remove it from the activity stack like
|
|
it normally would. Instead, the next time the user navigates to
|
|
it its {@link android.app.Activity#onCreate} method will be called
|
|
with a null icicle, just like it was starting for the first time.
|
|
|
|
<p>This is used by the Home activity to make sure it does not get
|
|
removed if it crashes for some reason. -->
|
|
<attr name="stateNotNeeded" format="boolean" />
|
|
|
|
<!-- Indicates that an Activity should be excluded from the list of
|
|
recently launched activities. -->
|
|
<attr name="excludeFromRecents" format="boolean" />
|
|
|
|
<!-- Specify that an Activity should be shown over the lock screen and,
|
|
in a multiuser environment, across all users' windows.
|
|
@deprecated use {@link android.R.attr#showForAllUsers} instead. -->
|
|
<attr name="showOnLockScreen" format="boolean" />
|
|
|
|
<!-- Specify that an Activity should be shown even if the current/foreground user
|
|
is different from the user of the Activity. This will also force the
|
|
<code>android.view.LayoutParams.FLAG_SHOW_WHEN_LOCKED</code> flag
|
|
to be set for all windows of this activity -->
|
|
<attr name="showForAllUsers" format="boolean" />
|
|
|
|
<!-- Specify the authorities under which this content provider can be
|
|
found. Multiple authorities may be supplied by separating them
|
|
with a semicolon. Authority names should use a Java-style naming
|
|
convention (such as <code>com.google.provider.MyProvider</code>)
|
|
in order to avoid conflicts. Typically this name is the same
|
|
as the class implementation describing the provider's data structure. -->
|
|
<attr name="authorities" format="string" />
|
|
|
|
<!-- Flag indicating whether this content provider would like to
|
|
participate in data synchronization. -->
|
|
<attr name="syncable" format="boolean" />
|
|
|
|
<!-- Flag declaring this activity to be 'immersive'; immersive activities
|
|
should not be interrupted with other activities or notifications. -->
|
|
<attr name="immersive" format="boolean" />
|
|
|
|
<!-- Specify the order in which content providers hosted by a process
|
|
are instantiated when that process is created. Not needed unless
|
|
you have providers with dependencies between each other, to make
|
|
sure that they are created in the order needed by those dependencies.
|
|
The value is a simple integer, with higher numbers being
|
|
initialized first. -->
|
|
<attr name="initOrder" format="integer" />
|
|
|
|
<!-- Specify the relative importance or ability in handling a particular
|
|
Intent. For receivers, this controls the order in which they are
|
|
executed to receive a broadcast (note that for
|
|
asynchronous broadcasts, this order is ignored). For activities,
|
|
this provides information about how good an activity is handling an
|
|
Intent; when multiple activities match an intent and have different
|
|
priorities, only those with the higher priority value will be
|
|
considered a match.
|
|
|
|
<p>Only use if you really need to impose some specific
|
|
order in which the broadcasts are received, or want to forcibly
|
|
place an activity to always be preferred over others. The value is a
|
|
single integer, with higher numbers considered to be better. -->
|
|
<attr name="priority" format="integer" />
|
|
|
|
<!-- Specify how an activity should be launched. See the
|
|
<a href="{@docRoot}guide/topics/fundamentals/tasks-and-back-stack.html">Tasks and Back
|
|
Stack</a> document for important information on how these options impact
|
|
the behavior of your application.
|
|
|
|
<p>If this attribute is not specified, <code>standard</code> launch
|
|
mode will be used. Note that the particular launch behavior can
|
|
be changed in some ways at runtime through the
|
|
{@link android.content.Intent} flags
|
|
{@link android.content.Intent#FLAG_ACTIVITY_SINGLE_TOP},
|
|
{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK}, and
|
|
{@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK}. -->
|
|
<attr name="launchMode">
|
|
<!-- The default mode, which will usually create a new instance of
|
|
the activity when it is started, though this behavior may change
|
|
with the introduction of other options such as
|
|
{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK
|
|
Intent.FLAG_ACTIVITY_NEW_TASK}. -->
|
|
<enum name="standard" value="0" />
|
|
<!-- If, when starting the activity, there is already an
|
|
instance of the same activity class in the foreground that is
|
|
interacting with the user, then
|
|
re-use that instance. This existing instance will receive a call to
|
|
{@link android.app.Activity#onNewIntent Activity.onNewIntent()} with
|
|
the new Intent that is being started. -->
|
|
<enum name="singleTop" value="1" />
|
|
<!-- If, when starting the activity, there is already a task running
|
|
that starts with this activity, then instead of starting a new
|
|
instance the current task is brought to the front. The existing
|
|
instance will receive a call to {@link android.app.Activity#onNewIntent
|
|
Activity.onNewIntent()}
|
|
with the new Intent that is being started, and with the
|
|
{@link android.content.Intent#FLAG_ACTIVITY_BROUGHT_TO_FRONT
|
|
Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT} flag set. This is a superset
|
|
of the singleTop mode, where if there is already an instance
|
|
of the activity being started at the top of the stack, it will
|
|
receive the Intent as described there (without the
|
|
FLAG_ACTIVITY_BROUGHT_TO_FRONT flag set). See the
|
|
<a href="{@docRoot}guide/topics/fundamentals/tasks-and-back-stack.html">Tasks and Back
|
|
Stack</a> document for more details about tasks.-->
|
|
<enum name="singleTask" value="2" />
|
|
<!-- Only allow one instance of this activity to ever be
|
|
running. This activity gets a unique task with only itself running
|
|
in it; if it is ever launched again with the same Intent, then that
|
|
task will be brought forward and its
|
|
{@link android.app.Activity#onNewIntent Activity.onNewIntent()}
|
|
method called. If this
|
|
activity tries to start a new activity, that new activity will be
|
|
launched in a separate task. See the
|
|
<a href="{@docRoot}guide/topics/fundamentals/tasks-and-back-stack.html">Tasks and Back
|
|
Stack</a> document for more details about tasks.-->
|
|
<enum name="singleInstance" value="3" />
|
|
</attr>
|
|
|
|
<!-- Specify the orientation an activity should be run in. If not
|
|
specified, it will run in the current preferred orientation
|
|
of the screen.
|
|
<p>This attribute is supported by the <a
|
|
href="{@docRoot}guide/topics/manifest/activity-element.html">{@code <activity>}</a>
|
|
element. -->
|
|
<attr name="screenOrientation">
|
|
<!-- No preference specified: let the system decide the best
|
|
orientation. This will either be the orientation selected
|
|
by the activity below, or the user's preferred orientation
|
|
if this activity is the bottom of a task. If the user
|
|
explicitly turned off sensor based orientation through settings
|
|
sensor based device rotation will be ignored. If not by default
|
|
sensor based orientation will be taken into account and the
|
|
orientation will changed based on how the user rotates the device.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_UNSPECIFIED}. -->
|
|
<enum name="unspecified" value="-1" />
|
|
<!-- Would like to have the screen in a landscape orientation: that
|
|
is, with the display wider than it is tall, ignoring sensor data.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_LANDSCAPE}. -->
|
|
<enum name="landscape" value="0" />
|
|
<!-- Would like to have the screen in a portrait orientation: that
|
|
is, with the display taller than it is wide, ignoring sensor data.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_PORTRAIT}. -->
|
|
<enum name="portrait" value="1" />
|
|
<!-- Use the user's current preferred orientation of the handset.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_USER}. -->
|
|
<enum name="user" value="2" />
|
|
<!-- Keep the screen in the same orientation as whatever is behind
|
|
this activity.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_BEHIND}. -->
|
|
<enum name="behind" value="3" />
|
|
<!-- Orientation is determined by a physical orientation sensor:
|
|
the display will rotate based on how the user moves the device.
|
|
Ignores user's setting to turn off sensor-based rotation.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_SENSOR}. -->
|
|
<enum name="sensor" value="4" />
|
|
<!-- Always ignore orientation determined by orientation sensor:
|
|
the display will not rotate when the user moves the device.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_NOSENSOR}. -->
|
|
<enum name="nosensor" value="5" />
|
|
<!-- Would like to have the screen in landscape orientation, but can
|
|
use the sensor to change which direction the screen is facing.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_SENSOR_LANDSCAPE}. -->
|
|
<enum name="sensorLandscape" value="6" />
|
|
<!-- Would like to have the screen in portrait orientation, but can
|
|
use the sensor to change which direction the screen is facing.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_SENSOR_PORTRAIT}. -->
|
|
<enum name="sensorPortrait" value="7" />
|
|
<!-- Would like to have the screen in landscape orientation, turned in
|
|
the opposite direction from normal landscape.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_REVERSE_LANDSCAPE}. -->
|
|
<enum name="reverseLandscape" value="8" />
|
|
<!-- Would like to have the screen in portrait orientation, turned in
|
|
the opposite direction from normal portrait.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_REVERSE_PORTRAIT}. -->
|
|
<enum name="reversePortrait" value="9" />
|
|
<!-- Orientation is determined by a physical orientation sensor:
|
|
the display will rotate based on how the user moves the device.
|
|
This allows any of the 4 possible rotations, regardless of what
|
|
the device will normally do (for example some devices won't
|
|
normally use 180 degree rotation).
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_FULL_SENSOR}. -->
|
|
<enum name="fullSensor" value="10" />
|
|
<!-- Would like to have the screen in landscape orientation, but if
|
|
the user has enabled sensor-based rotation then we can use the
|
|
sensor to change which direction the screen is facing.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_USER_LANDSCAPE}. -->
|
|
<enum name="userLandscape" value="11" />
|
|
<!-- Would like to have the screen in portrait orientation, but if
|
|
the user has enabled sensor-based rotation then we can use the
|
|
sensor to change which direction the screen is facing.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_USER_PORTRAIT}. -->
|
|
<enum name="userPortrait" value="12" />
|
|
<!-- Respect the user's sensor-based rotation preference, but if
|
|
sensor-based rotation is enabled then allow the screen to rotate
|
|
in all 4 possible directions regardless of what
|
|
the device will normally do (for example some devices won't
|
|
normally use 180 degree rotation).
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_FULL_USER}. -->
|
|
<enum name="fullUser" value="13" />
|
|
<!-- Screen is locked to its current rotation, whatever that is.
|
|
Corresponds to
|
|
{@link android.content.pm.ActivityInfo#SCREEN_ORIENTATION_LOCKED}. -->
|
|
<enum name="locked" value="14" />
|
|
</attr>
|
|
|
|
<!-- Specify one or more configuration changes that the activity will
|
|
handle itself. If not specified, the activity will be restarted
|
|
if any of these configuration changes happen in the system. Otherwise,
|
|
the activity will remain running and its
|
|
{@link android.app.Activity#onConfigurationChanged Activity.onConfigurationChanged}
|
|
method called with the new configuration.
|
|
|
|
<p>Note that all of these configuration changes can impact the
|
|
resource values seen by the application, so you will generally need
|
|
to re-retrieve all resources (including view layouts, drawables, etc)
|
|
to correctly handle any configuration change.
|
|
|
|
<p>These values must be kept in sync with those in
|
|
{@link android.content.pm.ActivityInfo} and
|
|
include/utils/ResourceTypes.h. -->
|
|
<attr name="configChanges">
|
|
<!-- The IMSI MCC has changed, that is a SIM has been detected and
|
|
updated the Mobile Country Code. -->
|
|
<flag name="mcc" value="0x0001" />
|
|
<!-- The IMSI MNC has changed, that is a SIM has been detected and
|
|
updated the Mobile Network Code. -->
|
|
<flag name="mnc" value="0x0002" />
|
|
<!-- The locale has changed, that is the user has selected a new
|
|
language that text should be displayed in. -->
|
|
<flag name="locale" value="0x0004" />
|
|
<!-- The touchscreen has changed. Should never normally happen. -->
|
|
<flag name="touchscreen" value="0x0008" />
|
|
<!-- The keyboard type has changed, for example the user has plugged
|
|
in an external keyboard. -->
|
|
<flag name="keyboard" value="0x0010" />
|
|
<!-- The keyboard or navigation accessibility has changed, for example
|
|
the user has slid the keyboard out to expose it. Note that
|
|
despite its name, this applied to any accessibility: keyboard
|
|
or navigation. -->
|
|
<flag name="keyboardHidden" value="0x0020" />
|
|
<!-- The navigation type has changed. Should never normally happen. -->
|
|
<flag name="navigation" value="0x0040" />
|
|
<!-- The screen orientation has changed, that is the user has
|
|
rotated the device. -->
|
|
<flag name="orientation" value="0x0080" />
|
|
<!-- The screen layout has changed. This might be caused by a
|
|
different display being activated. -->
|
|
<flag name="screenLayout" value="0x0100" />
|
|
<!-- The global user interface mode has changed. For example,
|
|
going in or out of car mode, night mode changing, etc. -->
|
|
<flag name="uiMode" value="0x0200" />
|
|
<!-- The current available screen size has changed. If applications don't
|
|
target at least {@link android.os.Build.VERSION_CODES#HONEYCOMB_MR2}
|
|
then the activity will always handle this itself (the change
|
|
will not result in a restart). This represents a change in the
|
|
currently available size, so will change when the user switches
|
|
between landscape and portrait. -->
|
|
<flag name="screenSize" value="0x0400" />
|
|
<!-- The physical screen size has changed. If applications don't
|
|
target at least {@link android.os.Build.VERSION_CODES#HONEYCOMB_MR2}
|
|
then the activity will always handle this itself (the change
|
|
will not result in a restart). This represents a change in size
|
|
regardless of orientation, so will only change when the actual
|
|
physical screen size has changed such as switching to an external
|
|
display. -->
|
|
<flag name="smallestScreenSize" value="0x0800" />
|
|
<!-- The layout direction has changed. For example going from LTR to RTL. -->
|
|
<flag name="layoutDirection" value="0x2000" />
|
|
<!-- The font scaling factor has changed, that is the user has
|
|
selected a new global font size. -->
|
|
<flag name="fontScale" value="0x40000000" />
|
|
</attr>
|
|
|
|
<!-- Indicate that the activity can be launched as the embedded child of another
|
|
activity. Particularly in the case where the child lives in a container
|
|
such as a Display owned by another activity.
|
|
|
|
<p>The default value of this attribute is <code>false</code>. -->
|
|
<attr name="allowEmbedded" format="boolean" />
|
|
|
|
<!-- Descriptive text for the associated data. -->
|
|
<attr name="description" format="reference" />
|
|
|
|
<!-- The name of the application package that an Instrumentation object
|
|
will run against. -->
|
|
<attr name="targetPackage" format="string" />
|
|
|
|
<!-- Flag indicating that an Instrumentation class wants to take care
|
|
of starting/stopping profiling itself, rather than relying on
|
|
the default behavior of profiling the complete time it is running.
|
|
This allows it to target profiling data at a specific set of
|
|
operations. -->
|
|
<attr name="handleProfiling" format="boolean" />
|
|
|
|
<!-- Flag indicating that an Instrumentation class should be run as a
|
|
functional test. -->
|
|
<attr name="functionalTest" format="boolean" />
|
|
|
|
<!-- The touch screen type used by an application. -->
|
|
<attr name="reqTouchScreen">
|
|
<enum name="undefined" value="0" />
|
|
<enum name="notouch" value="1" />
|
|
<enum name="stylus" value="2" />
|
|
<enum name="finger" value="3" />
|
|
</attr>
|
|
|
|
<!-- The input method preferred by an application. -->
|
|
<attr name="reqKeyboardType">
|
|
<enum name="undefined" value="0" />
|
|
<enum name="nokeys" value="1" />
|
|
<enum name="qwerty" value="2" />
|
|
<enum name="twelvekey" value="3" />
|
|
</attr>
|
|
|
|
<!-- Application's requirement for a hard keyboard -->
|
|
<attr name="reqHardKeyboard" format="boolean" />
|
|
|
|
<!-- The navigation device preferred by an application. -->
|
|
<attr name="reqNavigation">
|
|
<enum name="undefined" value="0" />
|
|
<enum name="nonav" value="1" />
|
|
<enum name="dpad" value="2" />
|
|
<enum name="trackball" value="3" />
|
|
<enum name="wheel" value="4" />
|
|
</attr>
|
|
|
|
<!-- Application's requirement for five way navigation -->
|
|
<attr name="reqFiveWayNav" format="boolean" />
|
|
|
|
<!-- The name of the class subclassing <code>BackupAgent</code> to manage
|
|
backup and restore of the application's data on external storage. -->
|
|
<attr name="backupAgent" format="string" />
|
|
|
|
<!-- Whether to allow the application to participate in the backup
|
|
and restore infrastructure. If this attribute is set to <code>false</code>,
|
|
no backup or restore of the application will ever be performed, even by a
|
|
full-system backup that would otherwise cause all application data to be saved
|
|
via adb. The default value of this attribute is <code>true</code>. -->
|
|
<attr name="allowBackup" format="boolean" />
|
|
|
|
<!-- Applications will set this in their manifest to opt-in to or out of full app data back-up
|
|
and restore. Alternatively they can set it to an xml resource within their app that will
|
|
be parsed by the BackupAgent to selectively backup files indicated within that xml. -->
|
|
<attr name="fullBackupContent" format="reference|boolean" />
|
|
|
|
<!-- Indicates that even though the application provides a <code>BackupAgent</code>,
|
|
only full-data streaming backup operations are to be performed to save the app's
|
|
data. This lets the app rely on full-data backups while still participating in
|
|
the backup and restore process via the BackupAgent's full-data backup APIs.
|
|
When this attribute is <code>true</code> the app's BackupAgent overrides of
|
|
the onBackup() and onRestore() callbacks can be empty stubs. -->
|
|
<attr name="fullBackupOnly" format="boolean" />
|
|
|
|
<!-- Whether the application in question should be terminated after its
|
|
settings have been restored during a full-system restore operation.
|
|
Single-package restore operations will never cause the application to
|
|
be shut down. Full-system restore operations typically only occur once,
|
|
when the phone is first set up. Third-party applications will not usually
|
|
need to use this attribute.
|
|
|
|
<p>The default is <code>true</code>, which means that after the application
|
|
has finished processing its data during a full-system restore, it will be
|
|
terminated. -->
|
|
<attr name="killAfterRestore" format="boolean" />
|
|
|
|
<!-- @deprecated This attribute is not used by the Android operating system. -->
|
|
<attr name="restoreNeedsApplication" format="boolean" />
|
|
|
|
<!-- Indicate that the application is prepared to attempt a restore of any
|
|
backed-up dataset, even if the backup is apparently from a newer version
|
|
of the application than is currently installed on the device. Setting
|
|
this attribute to <code>true</code> will permit the Backup Manager to
|
|
attempt restore even when a version mismatch suggests that the data are
|
|
incompatible. <em>Use with caution!</em>
|
|
|
|
<p>The default value of this attribute is <code>false</code>. -->
|
|
<attr name="restoreAnyVersion" format="boolean" />
|
|
|
|
<!-- The default install location defined by an application. -->
|
|
<attr name="installLocation">
|
|
<!-- Let the system decide ideal install location -->
|
|
<enum name="auto" value="0" />
|
|
<!-- Explicitly request to be installed on internal phone storage
|
|
only. -->
|
|
<enum name="internalOnly" value="1" />
|
|
<!-- Prefer to be installed on SD card. There is no guarantee that
|
|
the system will honor this request. The application might end
|
|
up being installed on internal storage if external media
|
|
is unavailable or too full. -->
|
|
<enum name="preferExternal" value="2" />
|
|
</attr>
|
|
|
|
<!-- Extra options for an activity's UI. Applies to either the {@code <activity>} or
|
|
{@code <application>} tag. If specified on the {@code <application>}
|
|
tag these will be considered defaults for all activities in the
|
|
application. -->
|
|
<attr name="uiOptions">
|
|
<!-- No extra UI options. This is the default. -->
|
|
<flag name="none" value="0" />
|
|
<!-- Split the options menu into a separate bar at the bottom of
|
|
the screen when severely constrained for horizontal space.
|
|
(e.g. portrait mode on a phone.) Instead of a small number
|
|
of action buttons appearing in the action bar at the top
|
|
of the screen, the action bar will split into the top navigation
|
|
section and the bottom menu section. Menu items will not be
|
|
split across the two bars; they will always appear together. -->
|
|
<flag name="splitActionBarWhenNarrow" value="1" />
|
|
</attr>
|
|
|
|
<!-- The name of the logical parent of the activity as it appears in the manifest. -->
|
|
<attr name="parentActivityName" format="string" />
|
|
|
|
<!-- Define how an activity persist across reboots. Activities defined as "never" will not
|
|
be persisted. Those defined as "always" will be persisted. Those defined as "taskOnly"
|
|
will persist the root activity of the task only. See below for more detail as to
|
|
what gets persisted. -->
|
|
<attr name="persistableMode">
|
|
<!-- The default. If this activity forms the root of a task then that task will be
|
|
persisted across reboots but only the launching intent will be used. If the task
|
|
relinquishes its identity then the intent used is that of the topmost inherited
|
|
identity. All activities above this activity in the task will not be persisted.
|
|
In addition this activity will not be passed a PersistableBundle into which it
|
|
could have stored its state. -->
|
|
<enum name="persistRootOnly" value="0" />
|
|
<!-- If this activity forms the root of a task then that task will not be persisted
|
|
across reboots -->
|
|
<enum name="persistNever" value="1" />
|
|
<!-- If this activity forms the root of a task then the task and this activity will
|
|
be persisted across reboots. If the activity above this activity is also
|
|
tagged with the attribute <code>"persist"</code> then it will be persisted as well.
|
|
And so on up the task stack until either an activity without the
|
|
<code>persistableMode="persistAcrossReboots"</code> attribute or one that was launched
|
|
with the flag Intent.FLAG_CLEAR_TASK_WHEN_RESET is encountered.
|
|
|
|
<p>Activities that are declared with the persistAcrossReboots attribute will be
|
|
provided with a PersistableBundle in onSavedInstanceState(), These activities may
|
|
use this PeristableBundle to save their state. Then, following a reboot, that
|
|
PersistableBundle will be provided back to the activity in its onCreate() method. -->
|
|
<enum name="persistAcrossReboots" value="2" />
|
|
</attr>
|
|
|
|
<!-- This attribute specifies that an activity shall become the root activity of a
|
|
new task each time it is launched. Using this attribute permits the user to
|
|
have multiple documents from the same applications appear in the recent tasks list.
|
|
|
|
<p>Such a document is any kind of item for which an application may want to
|
|
maintain multiple simultaneous instances. Examples might be text files, web
|
|
pages, spreadsheets, or emails. Each such document will be in a separate
|
|
task in the recent taskss list.
|
|
|
|
<p>This attribute is equivalent to adding the flag {@link
|
|
android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT} to every Intent used to launch
|
|
the activity.
|
|
|
|
<p>The documentLaunchMode attribute may be assigned one of four values, "none",
|
|
"intoExisting", "always" and "never", described in detail below. For values other than
|
|
<code>none</code> and <code>never</code> the activity must be defined with
|
|
{@link android.R.attr#launchMode} <code>standard</code>.
|
|
If this attribute is not specified, <code>none</code> will be used.
|
|
Note that <code>none</code> can be overridden at run time if the Intent used
|
|
to launch it contains the flag {@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT
|
|
Intent.FLAG_ACTIVITY_NEW_DOCUMENT}.
|
|
Similarly <code>intoExisting</code> will be overridden by the flag
|
|
{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT
|
|
Intent.FLAG_ACTIVITY_NEW_DOCUMENT} combined with
|
|
{@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK
|
|
Intent.FLAG_ACTIVITY_MULTIPLE_TASK}. If the value of
|
|
documentLaunchModes is <code>never</code> then any use of
|
|
{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT
|
|
Intent.FLAG_ACTIVITY_NEW_DOCUMENT} to launch this activity will be ignored. -->
|
|
<attr name="documentLaunchMode">
|
|
<!-- The default mode, which will create a new task only when
|
|
{@link android.content.Intent#FLAG_ACTIVITY_NEW_TASK
|
|
Intent.FLAG_ACTIVITY_NEW_TASK} is set. -->
|
|
<enum name="none" value="0" />
|
|
<!-- All tasks will be searched for one whose base Intent's ComponentName and
|
|
data URI match those of the launching Intent. If such a task is found
|
|
that task will be cleared and restarted with the root activity receiving a call
|
|
to {@link android.app.Activity#onNewIntent Activity.onNewIntent}. If no
|
|
such task is found a new task will be created.
|
|
<p>This is the equivalent of launching an activity with {@link
|
|
android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT Intent.FLAG_ACTIVITY_NEW_DOCUMENT}
|
|
set and without {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK
|
|
Intent.FLAG_ACTIVITY_MULTIPLE_TASK} set. -->
|
|
<enum name="intoExisting" value="1" />
|
|
<!-- A new task rooted at this activity will be created. This will happen whether or
|
|
not there is an existing task whose ComponentName and data URI match
|
|
that of the launcing intent This is the equivalent of launching an activity
|
|
with {@link
|
|
android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT Intent.FLAG_ACTIVITY_NEW_DOCUMENT}
|
|
and {@link android.content.Intent#FLAG_ACTIVITY_MULTIPLE_TASK
|
|
Intent.FLAG_ACTIVITY_MULTIPLE_TASK} both set. -->
|
|
<enum name="always" value="2" />
|
|
<!-- This activity will not be launched into a new document even if the Intent contains
|
|
{@link android.content.Intent#FLAG_ACTIVITY_NEW_DOCUMENT
|
|
Intent.FLAG_ACTIVITY_NEW_DOCUMENT}. This gives the activity writer ultimate
|
|
control over how their activity is used. Note that applications prior to api
|
|
21 will default to documentLaunchMode="none" so only activities that explicitly
|
|
opt out with <code>"never"</code> may do so. -->
|
|
<enum name="never" value="3" />
|
|
</attr>
|
|
|
|
<!-- The maximum number of entries of tasks rooted at this activity in the recent task list.
|
|
When this number of entries is reached the least recently used instance of this activity
|
|
will be removed from recents. The value will be clamped between 1 and 100 inclusive.
|
|
The default value for this if it is not specified is 15. -->
|
|
<attr name="maxRecents" format="integer" />
|
|
|
|
<!-- Tasks launched by activities with this attribute will remain in the recent tasks
|
|
list until the last activity in the task is completed. When that happens the task
|
|
will be automatically removed from the recent tasks list. This overrides the caller's
|
|
use of {@link android.content.Intent#FLAG_ACTIVITY_RETAIN_IN_RECENTS
|
|
Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS} -->
|
|
<attr name="autoRemoveFromRecents" format="boolean" />
|
|
|
|
<!-- Tasks whose root has this attribute set to true will replace baseIntent with that of the
|
|
next activity in the task. If the next activity also has this attribute set to true then
|
|
it will yield the baseIntent to any activity that it launches in the same task. This
|
|
continues until an activity is encountered which has this attribute set to false. False
|
|
is the default. This attribute set to true also permits activity's use of the
|
|
TaskDescription to change labels, colors and icons in the recent task list. -->
|
|
<attr name="relinquishTaskIdentity" format="boolean" />
|
|
|
|
<!-- Indicate that it is okay for this activity be resumed while the previous
|
|
activity is in the process of pausing, without waiting for the previous pause
|
|
to complete. Use this with caution: your activity can not acquire any exclusive
|
|
resources (such as opening the camera or recording audio) when it launches, or it
|
|
may conflict with the previous activity and fail.
|
|
|
|
<p>The default value of this attribute is <code>false</code>. -->
|
|
<attr name="resumeWhilePausing" format="boolean" />
|
|
|
|
<!-- Indicates that it is okay for this activity to be resized to any dimension. Intended for a
|
|
multi-window device where there can be multiple activities of various sizes on the screen
|
|
at the same time.
|
|
|
|
<p>The default value is <code>false</code> for applications with
|
|
<code>targetSdkVersion</code> lesser than {@link android.os.Build.VERSION_CODES#M} and
|
|
<code>true</code> otherwise.
|
|
|
|
<p>NOTE: A task's root activity value is applied to all additional activities launched in
|
|
the task. That is if the root activity of a task is resizeable then the system will treat
|
|
all other activities in the task as resizeable and will not if the root activity isn't
|
|
resizeable.
|
|
|
|
<p>NOTE: The value of {@link android.R.attr#screenOrientation} will be ignored for
|
|
resizeable activities as the system doesn't support fixed orientation on a resizeable
|
|
activity.
|
|
@hide -->
|
|
<attr name="resizeableActivity" format="boolean" />
|
|
|
|
<!-- This value indicates how tasks rooted at this activity will behave in lockTask mode.
|
|
While in lockTask mode the system will not launch non-permitted tasks until
|
|
lockTask mode is disabled.
|
|
<p>While in lockTask mode with multiple permitted tasks running, each launched task is
|
|
permitted to finish, transitioning to the previous locked task, until there is only one
|
|
task remaining. At that point the last task running is not permitted to finish, unless it
|
|
uses the value always. -->
|
|
<attr name="lockTaskMode">
|
|
<!-- This is the default value. Tasks will not launch into lockTask mode but can be
|
|
placed there by calling {@link android.app.Activity#startLockTask}. If a task with
|
|
this mode has been whitelisted using {@link
|
|
android.app.admin.DevicePolicyManager#setLockTaskPackages} then calling
|
|
{@link android.app.Activity#startLockTask} will enter lockTask mode immediately,
|
|
otherwise the user will be presented with a dialog to approve entering pinned mode.
|
|
<p>If the system is already in lockTask mode when a new task rooted at this activity
|
|
is launched that task will or will not start depending on whether the package of this
|
|
activity has been whitelisted.
|
|
<p>Tasks rooted at this activity can only exit lockTask mode using
|
|
{@link android.app.Activity#stopLockTask}. -->
|
|
<enum name="normal" value="0"/>
|
|
<!-- Tasks will not launch into lockTask mode and cannot be placed there using
|
|
{@link android.app.Activity#startLockTask} or be pinned from the Overview screen.
|
|
If the system is already in lockTask mode when a new task rooted at this activity is
|
|
launched that task will not be started.
|
|
<p>Note: This mode is only available to system and privileged applications.
|
|
Non-privileged apps with this value will be treated as normal.
|
|
-->
|
|
<enum name="never" value="1"/>
|
|
<!-- Tasks rooted at this activity will always launch into lockTask mode. If the system is
|
|
already in lockTask mode when this task is launched then the new task will be launched
|
|
on top of the current task. Tasks launched in this mode are capable of exiting
|
|
lockTask mode using {@link android.app.Activity#finish()}.
|
|
<p>Note: This mode is only available to system and privileged applications.
|
|
Non-privileged apps with this value will be treated as normal.
|
|
-->
|
|
<enum name="always" value="2"/>
|
|
<!-- If the DevicePolicyManager (DPM) authorizes this package ({@link
|
|
android.app.admin.DevicePolicyManager#setLockTaskPackages}) then this mode is
|
|
identical to always, except that the activity needs to call
|
|
{@link android.app.Activity#stopLockTask} before being able to finish if it is the last
|
|
locked task.
|
|
If the DPM does not authorize this package then this mode is identical to normal. -->
|
|
<enum name="if_whitelisted" value="3"/>
|
|
</attr>
|
|
<!-- When set installer will extract native libraries. If set to false
|
|
libraries in the apk must be stored and page-aligned. -->
|
|
<attr name="extractNativeLibs" format="boolean"/>
|
|
|
|
<!-- Specify whether an activity intent filter will need to be verified thru its set
|
|
of data URIs. This will only be used when the Intent's action is set to
|
|
{@link android.content.Intent#ACTION_VIEW Intent.ACTION_VIEW} and the Intent's category is
|
|
set to {@link android.content.Intent#CATEGORY_BROWSABLE Intent.CATEGORY_BROWSABLE} and the
|
|
intern filter data scheme is set to "http" or "https". When set to true, the intent filter
|
|
will need to use its data tag for getting the URIs to verify with.
|
|
|
|
For each URI, an HTTPS network request will be done to <code>/.well-known/statements.json</code>
|
|
host to verify that the web site is okay with the app intercepting the URI.
|
|
-->
|
|
<attr name="autoVerify" format="boolean" />
|
|
|
|
<!-- The <code>manifest</code> tag is the root of an
|
|
<code>AndroidManifest.xml</code> file,
|
|
describing the contents of an Android package (.apk) file. One
|
|
attribute must always be supplied: <code>package</code> gives a
|
|
unique name for the package, using a Java-style naming convention
|
|
to avoid name collisions. For example, applications published
|
|
by Google could have names of the form
|
|
<code>com.google.app.<em>appname</em></code>
|
|
|
|
<p>Inside of the manifest tag, may appear the following tags
|
|
in any order: {@link #AndroidManifestPermission permission},
|
|
{@link #AndroidManifestPermissionGroup permission-group},
|
|
{@link #AndroidManifestPermissionTree permission-tree},
|
|
{@link #AndroidManifestUsesSdk uses-sdk},
|
|
{@link #AndroidManifestUsesPermission uses-permission},
|
|
{@link #AndroidManifestUsesConfiguration uses-configuration},
|
|
{@link #AndroidManifestApplication application},
|
|
{@link #AndroidManifestInstrumentation instrumentation},
|
|
{@link #AndroidManifestUsesFeature uses-feature}. -->
|
|
<declare-styleable name="AndroidManifest">
|
|
<attr name="versionCode" />
|
|
<attr name="versionName" />
|
|
<attr name="revisionCode" />
|
|
<attr name="sharedUserId" />
|
|
<attr name="sharedUserLabel" />
|
|
<attr name="installLocation" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>application</code> tag describes application-level components
|
|
contained in the package, as well as general application
|
|
attributes. Many of the attributes you can supply here (such
|
|
as theme, label, icon, permission, process, taskAffinity,
|
|
and allowTaskReparenting) serve
|
|
as default values for the corresponding attributes of components
|
|
declared inside of the application.
|
|
|
|
<p>Inside of this element you specify what the application contains,
|
|
using the elements {@link #AndroidManifestProvider provider},
|
|
{@link #AndroidManifestService service},
|
|
{@link #AndroidManifestReceiver receiver},
|
|
{@link #AndroidManifestActivity activity},
|
|
{@link #AndroidManifestActivityAlias activity-alias}, and
|
|
{@link #AndroidManifestUsesLibrary uses-library}. The application tag
|
|
appears as a child of the root {@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestApplication" parent="AndroidManifest">
|
|
<!-- An optional name of a class implementing the overall
|
|
{@link android.app.Application} for this package. When the
|
|
process for your package is started, this class is instantiated
|
|
before any of the other application components. Note that this
|
|
is not required, and in fact most applications will probably
|
|
not need it. -->
|
|
<attr name="name" />
|
|
<attr name="theme" />
|
|
<attr name="label" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="description" />
|
|
<attr name="permission" />
|
|
<attr name="process" />
|
|
<attr name="taskAffinity" />
|
|
<attr name="allowTaskReparenting" />
|
|
<!-- Indicate whether this application contains code. If set to false,
|
|
there is no code associated with it and thus the system will not
|
|
try to load its code when launching components. The default is true
|
|
for normal behavior. -->
|
|
<attr name="hasCode" format="boolean" />
|
|
<attr name="persistent" />
|
|
<attr name="requiredForAllUsers" />
|
|
<!-- Specify whether the components in this application are enabled or not (that is, can be
|
|
instantiated by the system).
|
|
If "false", it overrides any component specific values (a value of "true" will not
|
|
override the component specific values). -->
|
|
<attr name="enabled" />
|
|
<attr name="debuggable" />
|
|
<attr name="vmSafeMode" />
|
|
<attr name="hardwareAccelerated" />
|
|
<!-- Name of activity to be launched for managing the application's space on the device. -->
|
|
<attr name="manageSpaceActivity" />
|
|
<attr name="allowClearUserData" />
|
|
<attr name="testOnly" />
|
|
<attr name="backupAgent" />
|
|
<attr name="allowBackup" />
|
|
<attr name="fullBackupOnly" />
|
|
<attr name="fullBackupContent" />
|
|
<attr name="killAfterRestore" />
|
|
<attr name="restoreNeedsApplication" />
|
|
<attr name="restoreAnyVersion" />
|
|
<attr name="neverEncrypt" />
|
|
<!-- Request that your application's processes be created with
|
|
a large Dalvik heap. This applies to <em>all</em> processes
|
|
created for the application. It only applies to the first
|
|
application loaded into a process; if using a sharedUserId
|
|
to allow multiple applications to use a process, they all must
|
|
use this option consistently or will get unpredictable results. -->
|
|
<attr name="largeHeap" format="boolean" />
|
|
<!-- Declare that this application can't participate in the normal
|
|
state save/restore mechanism. Since it is not able to save and
|
|
restore its state on demand,
|
|
it can not participate in the normal activity lifecycle. It will
|
|
not be killed while in the background; the user must explicitly
|
|
quit it. Only one such app can be running at a time; if the user
|
|
tries to launch a second such app, they will be prompted
|
|
to quit the first before doing so. While the
|
|
application is running, the user will be informed of this.
|
|
@hide -->
|
|
<attr name="cantSaveState" format="boolean" />
|
|
<attr name="uiOptions" />
|
|
<!-- Declare that your application will be able to deal with RTL (right to left) layouts.
|
|
If set to false (default value), your application will not care about RTL layouts. -->
|
|
<attr name="supportsRtl" format="boolean" />
|
|
<!-- Declare that this application requires access to restricted accounts of a certain
|
|
type. The default value is null and restricted accounts won\'t be visible to this
|
|
application. The type should correspond to the account authenticator type, such as
|
|
"com.google". -->
|
|
<attr name="restrictedAccountType" format="string"/>
|
|
<!-- Declare that this application requires an account of a certain
|
|
type. The default value is null and indicates that the application can work without
|
|
any accounts. The type should correspond to the account authenticator type, such as
|
|
"com.google". -->
|
|
<attr name="requiredAccountType" format="string"/>
|
|
<attr name="isGame" />
|
|
<!-- Declare that this application may use cleartext traffic, such as HTTP rather than
|
|
HTTPS; WebSockets rather than WebSockets Secure; XMPP, IMAP, STMP without STARTTLS or
|
|
TLS). Defaults to true. If set to false {@code false}, the application declares that it
|
|
does not intend to use cleartext network traffic, in which case platform components
|
|
(e.g. HTTP stacks, {@code DownloadManager}, {@code MediaPlayer}) will refuse
|
|
applications's requests to use cleartext traffic. Third-party libraries are encouraged
|
|
to honor this flag as well. -->
|
|
<attr name="usesCleartextTraffic" />
|
|
<attr name="multiArch" />
|
|
<attr name="extractNativeLibs" />
|
|
</declare-styleable>
|
|
<!-- The <code>permission</code> tag declares a security permission that can be
|
|
used to control access from other packages to specific components or
|
|
features in your package (or other packages). See the
|
|
<a href="{@docRoot}guide/topics/security/security.html">Security and Permissions</a>
|
|
document for more information on permissions.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestPermission" parent="AndroidManifest">
|
|
<!-- Required public name of the permission, which other components and
|
|
packages will use when referring to this permission. This is a string using
|
|
Java-style scoping to ensure it is unique. The prefix will often
|
|
be the same as our overall package name, for example
|
|
"com.mycompany.android.myapp.SomePermission". -->
|
|
<attr name="name" />
|
|
<attr name="label" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="permissionGroup" />
|
|
<attr name="description" />
|
|
<attr name="protectionLevel" />
|
|
<attr name="permissionFlags" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>permission-group</code> tag declares a logical grouping of
|
|
related permissions.
|
|
|
|
<p>Note that this tag does not declare a permission itself, only
|
|
a namespace in which further permissions can be placed. See
|
|
the {@link #AndroidManifestPermission <permission>} tag for
|
|
more information.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestPermissionGroup" parent="AndroidManifest">
|
|
<!-- Required public name of the permission group, permissions will use
|
|
to specify the group they are in. This is a string using
|
|
Java-style scoping to ensure it is unique. The prefix will often
|
|
be the same as our overall package name, for example
|
|
"com.mycompany.android.myapp.SomePermission". -->
|
|
<attr name="name" />
|
|
<attr name="label" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="description" />
|
|
<attr name="permissionGroupFlags" />
|
|
<attr name="priority" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>permission-tree</code> tag declares the base of a tree of
|
|
permission values: it declares that this package has ownership of
|
|
the given permission name, as well as all names underneath it
|
|
(separated by '.'). This allows you to use the
|
|
{@link android.content.pm.PackageManager#addPermission
|
|
PackageManager.addPermission()} method to dynamically add new
|
|
permissions under this tree.
|
|
|
|
<p>Note that this tag does not declare a permission itself, only
|
|
a namespace in which further permissions can be placed. See
|
|
the {@link #AndroidManifestPermission <permission>} tag for
|
|
more information.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestPermissionTree" parent="AndroidManifest">
|
|
<!-- Required public name of the permission tree, which is the base name
|
|
of all permissions under it. This is a string using
|
|
Java-style scoping to ensure it is unique. The prefix will often
|
|
be the same as our overall package name, for example
|
|
"com.mycompany.android.myapp.SomePermission". A permission tree name
|
|
must have more than two segments in its path; that is,
|
|
"com.me.foo" is okay, but not "com.me" or "com". -->
|
|
<attr name="name" />
|
|
<attr name="label" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>uses-permission</code> tag requests a
|
|
{@link #AndroidManifestPermission <permission>} that the containing
|
|
package must be granted in order for it to operate correctly. For runtime
|
|
permissions, i.e. ones with <code>dangerous</code> protection level, on a
|
|
platform that supports runtime permissions, the permission will not be
|
|
granted until the app explicitly requests it at runtime and the user approves
|
|
the grant. You cannot request at runtime permissions that are not declared
|
|
as used in the manifest. See the
|
|
<a href="{@docRoot}guide/topics/security/security.html">Security and Permissions</a>
|
|
document for more information on permissions. Also available is a
|
|
{@link android.Manifest.permission list of permissions} included
|
|
with the base platform.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestUsesPermission" parent="AndroidManifest">
|
|
<!-- Required name of the permission you use, as published with the
|
|
corresponding name attribute of a
|
|
{@link android.R.styleable#AndroidManifestPermission <permission>}
|
|
tag; often this is one of the {@link android.Manifest.permission standard
|
|
system permissions}. -->
|
|
<attr name="name" />
|
|
<!-- Optional: specify the maximum version of the Android OS for which the
|
|
application wishes to request the permission. When running on a version
|
|
of Android higher than the number given here, the permission will not
|
|
be requested. -->
|
|
<attr name="maxSdkVersion" format="integer" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>uses-configuration</code> tag specifies
|
|
a specific hardware configuration value used by the application.
|
|
For example an application might specify that it requires
|
|
a physical keyboard or a particular navigation method like
|
|
trackball. Multiple such attribute values can be specified by the
|
|
application.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag.
|
|
|
|
@deprecated Use <code>feature-group</code> instead.-->
|
|
<declare-styleable name="AndroidManifestUsesConfiguration" parent="AndroidManifest">
|
|
<!-- The type of touch screen used by an application. -->
|
|
<attr name="reqTouchScreen" />
|
|
<attr name="reqKeyboardType" />
|
|
<attr name="reqHardKeyboard" />
|
|
<attr name="reqNavigation" />
|
|
<attr name="reqFiveWayNav" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>uses-feature</code> tag specifies
|
|
a specific feature used by the application.
|
|
For example an application might specify that it requires
|
|
specific version of OpenGL. Multiple such attribute
|
|
values can be specified by the application.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestUsesFeature" parent="AndroidManifest">
|
|
<!-- The GLES driver version number needed by an application.
|
|
The higher 16 bits represent the major number and the lower 16 bits
|
|
represent the minor number. For example for GL 1.2 referring to
|
|
0x00000102, the actual value should be set as 0x00010002. -->
|
|
<attr name="glEsVersion" format="integer"/>
|
|
<!-- The name of the feature that is being used. -->
|
|
<attr name="name" />
|
|
<!-- Specify whether this feature is required for the application.
|
|
The default is true, meaning the application requires the
|
|
feature, and does not want to be installed on devices that
|
|
don't support it. If you set this to false, then this will
|
|
not impose a restriction on where the application can be
|
|
installed. -->
|
|
<attr name="required" format="boolean" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>feature-group</code> tag specifies
|
|
a set of one or more <code>uses-feature</code> elements that
|
|
the application can utilize. An application uses multiple
|
|
<code>feature-group</code> sets to indicate that it can support
|
|
different combinations of features.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestFeatureGroup">
|
|
<!-- The human-readable name of the feature group. -->
|
|
<attr name="label" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>uses-sdk</code> tag describes the SDK features that the
|
|
containing package must be running on to operate correctly.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestUsesSdk" parent="AndroidManifest">
|
|
<!-- This is the minimum SDK version number that the application
|
|
requires. This number is an abstract integer, from the list
|
|
in {@link android.os.Build.VERSION_CODES} If
|
|
not supplied, the application will work on any SDK. This
|
|
may also be string (such as "Donut") if the application was built
|
|
against a development branch, in which case it will only work against
|
|
the development builds. -->
|
|
<attr name="minSdkVersion" format="integer|string" />
|
|
<!-- This is the SDK version number that the application is targeting.
|
|
It is able to run on older versions (down to minSdkVersion), but
|
|
was explicitly tested to work with the version specified here.
|
|
Specifying this version allows the platform to disable compatibility
|
|
code that are not required or enable newer features that are not
|
|
available to older applications. This may also be a string
|
|
(such as "Donut") if this is built against a development
|
|
branch, in which case minSdkVersion is also forced to be that
|
|
string. -->
|
|
<attr name="targetSdkVersion" format="integer|string" />
|
|
<!-- This is the maximum SDK version number that an application works
|
|
on. You can use this to ensure your application is filtered out
|
|
of later versions of the platform when you know you have
|
|
incompatibility with them. -->
|
|
<attr name="maxSdkVersion" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>library</code> tag declares that this apk is providing itself
|
|
as a shared library for other applications to use. It can only be used
|
|
with apks that are built in to the system image. Other apks can link to
|
|
it with the {@link #AndroidManifestUsesLibrary uses-library} tag.
|
|
|
|
<p>This appears as a child tag of the
|
|
{@link #AndroidManifestApplication application} tag. -->
|
|
<declare-styleable name="AndroidManifestLibrary" parent="AndroidManifest">
|
|
<!-- Required public name of the library, which other components and
|
|
packages will use when referring to this library. This is a string using
|
|
Java-style scoping to ensure it is unique. The name should typically
|
|
be the same as the apk's package name. -->
|
|
<attr name="name" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>uses-libraries</code> specifies a shared library that this
|
|
package requires to be linked against. Specifying this flag tells the
|
|
system to include this library's code in your class loader.
|
|
|
|
<p>This appears as a child tag of the
|
|
{@link #AndroidManifestApplication application} tag. -->
|
|
<declare-styleable name="AndroidManifestUsesLibrary" parent="AndroidManifestApplication">
|
|
<!-- Required name of the library you use. -->
|
|
<attr name="name" />
|
|
<!-- Specify whether this library is required for the application.
|
|
The default is true, meaning the application requires the
|
|
library, and does not want to be installed on devices that
|
|
don't support it. If you set this to false, then this will
|
|
allow the application to be installed even if the library
|
|
doesn't exist, and you will need to check for its presence
|
|
dynamically at runtime. -->
|
|
<attr name="required" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>supports-screens</code> specifies the screen dimensions an
|
|
application supports. By default a modern application supports all
|
|
screen sizes and must explicitly disable certain screen sizes here;
|
|
older applications are assumed to only support the traditional normal
|
|
(HVGA) screen size. Note that screen size is a separate axis from
|
|
density, and is determined as the available pixels to an application
|
|
after density scaling has been applied.
|
|
|
|
<p>This appears as a child tag of the
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestSupportsScreens" parent="AndroidManifest">
|
|
<!-- Starting with {@link android.os.Build.VERSION_CODES#HONEYCOMB_MR2},
|
|
this is the new way to specify the minimum screen size an application is
|
|
compatible with. This attribute provides the required minimum
|
|
"smallest screen width" (as per the -swNNNdp resource configuration)
|
|
that the application can run on. For example, a typical phone
|
|
screen is 320, a 7" tablet 600, and a 10" tablet 720. If the
|
|
smallest screen width of the device is below the value supplied here,
|
|
then the application is considered incompatible with that device.
|
|
If not supplied, then any old smallScreens, normalScreens, largeScreens,
|
|
or xlargeScreens attributes will be used instead. -->
|
|
<attr name="requiresSmallestWidthDp" format="integer" />
|
|
<!-- Starting with {@link android.os.Build.VERSION_CODES#HONEYCOMB_MR2},
|
|
this is the new way to specify the largest screens an application is
|
|
compatible with. This attribute provides the maximum
|
|
"smallest screen width" (as per the -swNNNdp resource configuration)
|
|
that the application is designed for. If this value is smaller than
|
|
the "smallest screen width" of the device it is running on, the user
|
|
is offered to run it in a compatibility mode that emulates a
|
|
smaller screen and zooms it to fit the screen. Currently the compatibility mode only
|
|
emulates phone screens with a 320dp width, so compatibility mode is not applied if the
|
|
value for compatibleWidthLimitDp is larger than 320. -->
|
|
<attr name="compatibleWidthLimitDp" format="integer" />
|
|
<!-- Starting with {@link android.os.Build.VERSION_CODES#HONEYCOMB_MR2},
|
|
this is the new way to specify the screens an application is
|
|
compatible with. This attribute provides the maximum
|
|
"smallest screen width" (as per the -swNNNdp resource configuration)
|
|
that the application can work well on. If this value is smaller than
|
|
the "smallest screen width" of the device it is running on, the
|
|
application will be forced in to screen compatibility mode with
|
|
no way for the user to turn it off. Currently the compatibility mode only
|
|
emulates phone screens with a 320dp width, so compatibility mode is not applied if the
|
|
value for largestWidthLimitDp is larger than 320. -->
|
|
<attr name="largestWidthLimitDp" format="integer" />
|
|
<!-- Indicates whether the application supports smaller screen form-factors.
|
|
A small screen is defined as one with a smaller aspect ratio than
|
|
the traditional HVGA screen; that is, for a portrait screen, less
|
|
tall than an HVGA screen. In practice, this means a QVGA low
|
|
density or VGA high density screen. An application that does
|
|
not support small screens <em>will not be available</em> for
|
|
small screen devices, since there is little the platform can do
|
|
to make such an application work on a smaller screen. -->
|
|
<attr name="smallScreens" format="boolean" />
|
|
<!-- Indicates whether an application supports the normal screen
|
|
form-factors. Traditionally this is an HVGA normal density
|
|
screen, but WQVGA low density and WVGA high density are also
|
|
considered to be normal. This attribute is true by default,
|
|
and applications currently should leave it that way. -->
|
|
<attr name="normalScreens" format="boolean" />
|
|
<!-- Indicates whether the application supports larger screen form-factors.
|
|
A large screen is defined as a screen that is significantly larger
|
|
than a normal phone screen, and thus may require some special care
|
|
on the application's part to make good use of it. An example would
|
|
be a VGA <em>normal density</em> screen, though even larger screens
|
|
are certainly possible. An application that does not support
|
|
large screens will be placed as a postage stamp on such a
|
|
screen, so that it retains the dimensions it was originally
|
|
designed for. -->
|
|
<attr name="largeScreens" format="boolean" />
|
|
<!-- Indicates whether the application supports extra large screen form-factors. -->
|
|
<attr name="xlargeScreens" format="boolean" />
|
|
<!-- Indicates whether the application can resize itself to newer
|
|
screen sizes. This is mostly used to distinguish between old
|
|
applications that may not be compatible with newly introduced
|
|
screen sizes and newer applications that should be; it will be
|
|
set for you automatically based on whether you are targeting
|
|
a newer platform that supports more screens. -->
|
|
<attr name="resizeable" format="boolean" />
|
|
<!-- Indicates whether the application can accommodate any screen
|
|
density. Older applications are assumed to not be able to,
|
|
new ones able to. You can explicitly supply your abilities
|
|
here. -->
|
|
<attr name="anyDensity" format="boolean" />
|
|
</declare-styleable>
|
|
|
|
<!-- Private tag to declare system protected broadcast actions.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestProtectedBroadcast" parent="AndroidManifest">
|
|
<attr name="name" />
|
|
</declare-styleable>
|
|
|
|
<!-- Private tag to declare the original package name that this package is
|
|
based on. Only used for packages installed in the system image. If
|
|
given, and different than the actual package name, and the given
|
|
original package was previously installed on the device but the new
|
|
one was not, then the data for the old one will be renamed to be
|
|
for the new package.
|
|
|
|
<p>This appears as a child tag of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestOriginalPackage" parent="AndroidManifest">
|
|
<attr name="name" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>provider</code> tag declares a
|
|
{@link android.content.ContentProvider} class that is available
|
|
as part of the package's application components, supplying structured
|
|
access to data managed by the application.
|
|
|
|
<p>This appears as a child tag of the
|
|
{@link #AndroidManifestApplication application} tag. -->
|
|
<declare-styleable name="AndroidManifestProvider" parent="AndroidManifestApplication">
|
|
<!-- Required name of the class implementing the provider, deriving from
|
|
{@link android.content.ContentProvider}. This is a fully
|
|
qualified class name (for example, com.mycompany.myapp.MyProvider); as a
|
|
short-hand if the first character of the class
|
|
is a period then it is appended to your package name. -->
|
|
<attr name="name" />
|
|
<attr name="label" />
|
|
<attr name="description" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="process" />
|
|
<attr name="authorities" />
|
|
<attr name="syncable" />
|
|
<attr name="readPermission" />
|
|
<attr name="writePermission" />
|
|
<attr name="grantUriPermissions" />
|
|
<attr name="permission" />
|
|
<attr name="multiprocess" />
|
|
<attr name="initOrder" />
|
|
<!-- Specify whether this provider is enabled or not (that is, can be instantiated by the system).
|
|
It can also be specified for an application as a whole, in which case a value of "false"
|
|
will override any component specific values (a value of "true" will not override the
|
|
component specific values). -->
|
|
<attr name="enabled" />
|
|
<attr name="exported" />
|
|
<attr name="singleUser" />
|
|
</declare-styleable>
|
|
|
|
<!-- Attributes that can be supplied in an AndroidManifest.xml
|
|
<code>grant-uri-permission</code> tag, a child of the
|
|
{@link #AndroidManifestProvider provider} tag, describing a specific
|
|
URI path that can be granted as a permission. This tag can be
|
|
specified multiple time to supply multiple paths. -->
|
|
<declare-styleable name="AndroidManifestGrantUriPermission" parent="AndroidManifestProvider">
|
|
<!-- Specify a URI path that must exactly match, as per
|
|
{@link android.os.PatternMatcher} with
|
|
{@link android.os.PatternMatcher#PATTERN_LITERAL}. -->
|
|
<attr name="path" format="string" />
|
|
<!-- Specify a URI path that must be a prefix to match, as per
|
|
{@link android.os.PatternMatcher} with
|
|
{@link android.os.PatternMatcher#PATTERN_PREFIX}. -->
|
|
<attr name="pathPrefix" format="string" />
|
|
<!-- Specify a URI path that matches a simple pattern, as per
|
|
{@link android.os.PatternMatcher} with
|
|
{@link android.os.PatternMatcher#PATTERN_SIMPLE_GLOB}.
|
|
Note that because '\' is used as an escape character when
|
|
reading the string from XML (before it is parsed as a pattern),
|
|
you will need to double-escape: for example a literal "*" would
|
|
be written as "\\*" and a literal "\" would be written as
|
|
"\\\\". This is basically the same as what you would need to
|
|
write if constructing the string in Java code. -->
|
|
<attr name="pathPattern" format="string" />
|
|
</declare-styleable>
|
|
|
|
<!-- Attributes that can be supplied in an AndroidManifest.xml
|
|
<code>path-permission</code> tag, a child of the
|
|
{@link #AndroidManifestProvider provider} tag, describing a permission
|
|
that allows access to a specific path in the provider. This tag can be
|
|
specified multiple time to supply multiple paths. -->
|
|
<declare-styleable name="AndroidManifestPathPermission" parent="AndroidManifestProvider">
|
|
<attr name="path" />
|
|
<attr name="pathPrefix" />
|
|
<attr name="pathPattern" />
|
|
<attr name="permission" />
|
|
<attr name="readPermission" />
|
|
<attr name="writePermission" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>service</code> tag declares a
|
|
{@link android.app.Service} class that is available
|
|
as part of the package's application components, implementing
|
|
long-running background operations or a rich communication API
|
|
that can be called by other packages.
|
|
|
|
<p>Zero or more {@link #AndroidManifestIntentFilter intent-filter}
|
|
tags can be included inside of a service, to specify the Intents
|
|
that can connect with it. If none are specified, the service can
|
|
only be accessed by direct specification of its class name.
|
|
The service tag appears as a child tag of the
|
|
{@link #AndroidManifestApplication application} tag. -->
|
|
<declare-styleable name="AndroidManifestService" parent="AndroidManifestApplication">
|
|
<!-- Required name of the class implementing the service, deriving from
|
|
{@link android.app.Service}. This is a fully
|
|
qualified class name (for example, com.mycompany.myapp.MyService); as a
|
|
short-hand if the first character of the class
|
|
is a period then it is appended to your package name. -->
|
|
<attr name="name" />
|
|
<attr name="label" />
|
|
<attr name="description" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="permission" />
|
|
<attr name="process" />
|
|
<!-- Specify whether the service is enabled or not (that is, can be instantiated by the system).
|
|
It can also be specified for an application as a whole, in which case a value of "false"
|
|
will override any component specific values (a value of "true" will not override the
|
|
component specific values). -->
|
|
<attr name="enabled" />
|
|
<attr name="exported" />
|
|
<!-- If set to true, this service with be automatically stopped
|
|
when the user remove a task rooted in an activity owned by
|
|
the application. The default is false. -->
|
|
<attr name="stopWithTask" format="boolean" />
|
|
<!-- If set to true, this service will run under a special process
|
|
that is isolated from the rest of the system. The only communication
|
|
with it is through the Service API (binding and starting). -->
|
|
<attr name="isolatedProcess" format="boolean" />
|
|
<attr name="singleUser" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>receiver</code> tag declares an
|
|
{@link android.content.BroadcastReceiver} class that is available
|
|
as part of the package's application components, allowing the
|
|
application to receive actions or data broadcast by other
|
|
applications even if it is not currently running.
|
|
|
|
<p>Zero or more {@link #AndroidManifestIntentFilter intent-filter}
|
|
tags can be included inside of a receiver, to specify the Intents
|
|
it will receive. If none are specified, the receiver will only
|
|
be run when an Intent is broadcast that is directed at its specific
|
|
class name. The receiver tag appears as a child tag of the
|
|
{@link #AndroidManifestApplication application} tag. -->
|
|
<declare-styleable name="AndroidManifestReceiver" parent="AndroidManifestApplication">
|
|
<!-- Required name of the class implementing the receiver, deriving from
|
|
{@link android.content.BroadcastReceiver}. This is a fully
|
|
qualified class name (for example, com.mycompany.myapp.MyReceiver); as a
|
|
short-hand if the first character of the class
|
|
is a period then it is appended to your package name. -->
|
|
<attr name="name" />
|
|
<attr name="label" />
|
|
<attr name="description" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="permission" />
|
|
<attr name="process" />
|
|
<!-- Specify whether the receiver is enabled or not (that is, can be instantiated by the system).
|
|
It can also be specified for an application as a whole, in which case a value of "false"
|
|
will override any component specific values (a value of "true" will not override the
|
|
component specific values). -->
|
|
<attr name="enabled" />
|
|
<attr name="exported" />
|
|
<attr name="singleUser" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>activity</code> tag declares an
|
|
{@link android.app.Activity} class that is available
|
|
as part of the package's application components, implementing
|
|
a part of the application's user interface.
|
|
|
|
<p>Zero or more {@link #AndroidManifestIntentFilter intent-filter}
|
|
tags can be included inside of an activity, to specify the Intents
|
|
that it can handle. If none are specified, the activity can
|
|
only be started through direct specification of its class name.
|
|
The activity tag appears as a child tag of the
|
|
{@link #AndroidManifestApplication application} tag. -->
|
|
<declare-styleable name="AndroidManifestActivity" parent="AndroidManifestApplication">
|
|
<!-- Required name of the class implementing the activity, deriving from
|
|
{@link android.app.Activity}. This is a fully
|
|
qualified class name (for example, com.mycompany.myapp.MyActivity); as a
|
|
short-hand if the first character of the class
|
|
is a period then it is appended to your package name. -->
|
|
<attr name="name" />
|
|
<attr name="theme" />
|
|
<attr name="label" />
|
|
<attr name="description" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="launchMode" />
|
|
<attr name="screenOrientation" />
|
|
<attr name="configChanges" />
|
|
<attr name="permission" />
|
|
<attr name="multiprocess" />
|
|
<attr name="process" />
|
|
<attr name="taskAffinity" />
|
|
<attr name="allowTaskReparenting" />
|
|
<attr name="finishOnTaskLaunch" />
|
|
<attr name="finishOnCloseSystemDialogs" />
|
|
<attr name="clearTaskOnLaunch" />
|
|
<attr name="noHistory" />
|
|
<attr name="alwaysRetainTaskState" />
|
|
<attr name="stateNotNeeded" />
|
|
<attr name="excludeFromRecents" />
|
|
<!-- @deprecated use {@link android.R.attr#showForAllUsers} instead. -->
|
|
<attr name="showOnLockScreen" />
|
|
<!-- Specify whether the activity is enabled or not (that is, can be instantiated by the system).
|
|
It can also be specified for an application as a whole, in which case a value of "false"
|
|
will override any component specific values (a value of "true" will not override the
|
|
component specific values). -->
|
|
<attr name="enabled" />
|
|
<attr name="exported" />
|
|
<!-- Specify the default soft-input mode for the main window of
|
|
this activity. A value besides "unspecified" here overrides
|
|
any value in the theme. -->
|
|
<attr name="windowSoftInputMode" />
|
|
<attr name="immersive" />
|
|
<attr name="hardwareAccelerated" />
|
|
<attr name="uiOptions" />
|
|
<attr name="parentActivityName" />
|
|
<attr name="singleUser" />
|
|
<!-- @hide This broacast receiver will only receive broadcasts for the
|
|
primary user. Can only be used with receivers. -->
|
|
<attr name="primaryUserOnly" format="boolean" />
|
|
<attr name="persistableMode" />
|
|
<attr name="allowEmbedded" />
|
|
<attr name="documentLaunchMode" />
|
|
<attr name="maxRecents" />
|
|
<attr name="autoRemoveFromRecents" />
|
|
<attr name="relinquishTaskIdentity" />
|
|
<attr name="resumeWhilePausing" />
|
|
<!-- @hide -->
|
|
<attr name="resizeableActivity" />
|
|
<attr name="lockTaskMode" />
|
|
<attr name="showForAllUsers" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>activity-alias</code> tag declares a new
|
|
name for an existing {@link #AndroidManifestActivity activity}
|
|
tag.
|
|
|
|
<p>Zero or more {@link #AndroidManifestIntentFilter intent-filter}
|
|
tags can be included inside of an activity-alias, to specify the Intents
|
|
that it can handle. If none are specified, the activity can
|
|
only be started through direct specification of its class name.
|
|
The activity-alias tag appears as a child tag of the
|
|
{@link #AndroidManifestApplication application} tag. -->
|
|
<declare-styleable name="AndroidManifestActivityAlias" parent="AndroidManifestApplication">
|
|
<!-- Required name of the class implementing the activity, deriving from
|
|
{@link android.app.Activity}. This is a fully
|
|
qualified class name (for example, com.mycompany.myapp.MyActivity); as a
|
|
short-hand if the first character of the class
|
|
is a period then it is appended to your package name. -->
|
|
<attr name="name" />
|
|
<!-- The name of the activity this alias should launch. The activity
|
|
must be in the same manifest as the alias, and have been defined
|
|
in that manifest before the alias here. This must use a Java-style
|
|
naming convention to ensure the name is unique, for example
|
|
"com.mycompany.MyName". -->
|
|
<attr name="targetActivity" format="string" />
|
|
<attr name="label" />
|
|
<attr name="description" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="permission" />
|
|
<!-- Specify whether the activity-alias is enabled or not (that is, can be instantiated by the system).
|
|
It can also be specified for an application as a whole, in which case a value of "false"
|
|
will override any component specific values (a value of "true" will not override the
|
|
component specific values). -->
|
|
<attr name="enabled" />
|
|
<attr name="exported" />
|
|
<attr name="parentActivityName" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>meta-data</code> tag is used to attach additional
|
|
arbitrary data to an application component. The data can later
|
|
be retrieved programmatically from the
|
|
{@link android.content.pm.ComponentInfo#metaData
|
|
ComponentInfo.metaData} field. There is no meaning given to this
|
|
data by the system. You may supply the data through either the
|
|
<code>value</code> or <code>resource</code> attribute; if both
|
|
are given, then <code>resource</code> will be used.
|
|
|
|
<p>It is highly recommended that you avoid supplying related data as
|
|
multiple separate meta-data entries. Instead, if you have complex
|
|
data to associate with a component, then use the <code>resource</code>
|
|
attribute to assign an XML resource that the client can parse to
|
|
retrieve the complete data. -->
|
|
<declare-styleable name="AndroidManifestMetaData"
|
|
parent="AndroidManifestApplication
|
|
AndroidManifestActivity
|
|
AndroidManifestReceiver
|
|
AndroidManifestProvider
|
|
AndroidManifestService
|
|
AndroidManifestPermission
|
|
AndroidManifestPermissionGroup
|
|
AndroidManifestInstrumentation">
|
|
<attr name="name" />
|
|
<!-- Concrete value to assign to this piece of named meta-data.
|
|
The data can later be retrieved from the meta data Bundle
|
|
through {@link android.os.Bundle#getString Bundle.getString},
|
|
{@link android.os.Bundle#getInt Bundle.getInt},
|
|
{@link android.os.Bundle#getBoolean Bundle.getBoolean},
|
|
or {@link android.os.Bundle#getFloat Bundle.getFloat} depending
|
|
on the type used here. -->
|
|
<attr name="value" format="string|integer|color|float|boolean" />
|
|
<!-- Resource identifier to assign to this piece of named meta-data.
|
|
The resource identifier can later be retrieved from the meta data
|
|
Bundle through {@link android.os.Bundle#getInt Bundle.getInt}. -->
|
|
<attr name="resource" format="reference" />
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>intent-filter</code> tag is used to construct an
|
|
{@link android.content.IntentFilter} object that will be used
|
|
to determine which component can handle a particular
|
|
{@link android.content.Intent} that has been given to the system.
|
|
It can be used as a child of the
|
|
{@link #AndroidManifestActivity activity},
|
|
{@link #AndroidManifestReceiver receiver} and
|
|
{@link #AndroidManifestService service}
|
|
tags.
|
|
|
|
<p> Zero or more {@link #AndroidManifestAction action},
|
|
{@link #AndroidManifestCategory category}, and/or
|
|
{@link #AndroidManifestData data} tags should be
|
|
included inside to describe the contents of the filter.
|
|
|
|
<p> The optional label and icon attributes here are used with
|
|
an activity to supply an alternative description of that activity
|
|
when it is being started through an Intent matching this filter. -->
|
|
<declare-styleable name="AndroidManifestIntentFilter"
|
|
parent="AndroidManifestActivity AndroidManifestReceiver AndroidManifestService">
|
|
<attr name="label" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="priority" />
|
|
<attr name="autoVerify" />
|
|
</declare-styleable>
|
|
|
|
<!-- Attributes that can be supplied in an AndroidManifest.xml
|
|
<code>action</code> tag, a child of the
|
|
{@link #AndroidManifestIntentFilter intent-filter} tag.
|
|
See {@link android.content.IntentFilter#addAction} for
|
|
more information. -->
|
|
<declare-styleable name="AndroidManifestAction" parent="AndroidManifestIntentFilter">
|
|
<!-- The name of an action that is handled, using the Java-style
|
|
naming convention. For example, to support
|
|
{@link android.content.Intent#ACTION_VIEW Intent.ACTION_VIEW}
|
|
you would put <code>android.intent.action.VIEW</code> here.
|
|
Custom actions should generally use a prefix matching the
|
|
package name. -->
|
|
<attr name="name" />
|
|
</declare-styleable>
|
|
|
|
<!-- Attributes that can be supplied in an AndroidManifest.xml
|
|
<code>data</code> tag, a child of the
|
|
{@link #AndroidManifestIntentFilter intent-filter} tag, describing
|
|
the types of data that match. This tag can be specified multiple
|
|
times to supply multiple data options, as described in the
|
|
{@link android.content.IntentFilter} class. Note that all such
|
|
tags are adding options to the same IntentFilter so that, for example,
|
|
<code><data android:scheme="myscheme" android:host="me.com" /></code>
|
|
is equivalent to <code><data android:scheme="myscheme" />
|
|
<data android:host="me.com" /></code>. -->
|
|
<declare-styleable name="AndroidManifestData" parent="AndroidManifestIntentFilter">
|
|
<!-- Specify a MIME type that is handled, as per
|
|
{@link android.content.IntentFilter#addDataType
|
|
IntentFilter.addDataType()}.
|
|
<p><em>Note: MIME type matching in the Android framework is
|
|
case-sensitive, unlike formal RFC MIME types. As a result,
|
|
MIME types here should always use lower case letters.</em></p> -->
|
|
<attr name="mimeType" format="string" />
|
|
<!-- Specify a URI scheme that is handled, as per
|
|
{@link android.content.IntentFilter#addDataScheme
|
|
IntentFilter.addDataScheme()}.
|
|
<p><em>Note: scheme matching in the Android framework is
|
|
case-sensitive, unlike the formal RFC. As a result,
|
|
schemes here should always use lower case letters.</em></p> -->
|
|
<attr name="scheme" format="string" />
|
|
<!-- Specify a URI scheme specific part that must exactly match, as per
|
|
{@link android.content.IntentFilter#addDataSchemeSpecificPart
|
|
IntentFilter.addDataSchemeSpecificPart()} with
|
|
{@link android.os.PatternMatcher#PATTERN_LITERAL}. -->
|
|
<attr name="ssp" format="string" />
|
|
<!-- Specify a URI scheme specific part that must be a prefix to match, as per
|
|
{@link android.content.IntentFilter#addDataSchemeSpecificPart
|
|
IntentFilter.addDataSchemeSpecificPart()} with
|
|
{@link android.os.PatternMatcher#PATTERN_PREFIX}. -->
|
|
<attr name="sspPrefix" format="string" />
|
|
<!-- Specify a URI scheme specific part that matches a simple pattern, as per
|
|
{@link android.content.IntentFilter#addDataSchemeSpecificPart
|
|
IntentFilter.addDataSchemeSpecificPart()} with
|
|
{@link android.os.PatternMatcher#PATTERN_SIMPLE_GLOB}.
|
|
Note that because '\' is used as an escape character when
|
|
reading the string from XML (before it is parsed as a pattern),
|
|
you will need to double-escape: for example a literal "*" would
|
|
be written as "\\*" and a literal "\" would be written as
|
|
"\\\\". This is basically the same as what you would need to
|
|
write if constructing the string in Java code. -->
|
|
<attr name="sspPattern" format="string" />
|
|
<!-- Specify a URI authority host that is handled, as per
|
|
{@link android.content.IntentFilter#addDataAuthority
|
|
IntentFilter.addDataAuthority()}.
|
|
<p><em>Note: host name matching in the Android framework is
|
|
case-sensitive, unlike the formal RFC. As a result,
|
|
host names here should always use lower case letters.</em></p> -->
|
|
<attr name="host" format="string" />
|
|
<!-- Specify a URI authority port that is handled, as per
|
|
{@link android.content.IntentFilter#addDataAuthority
|
|
IntentFilter.addDataAuthority()}. If a host is supplied
|
|
but not a port, any port is matched. -->
|
|
<attr name="port" format="string" />
|
|
<!-- Specify a URI path that must exactly match, as per
|
|
{@link android.content.IntentFilter#addDataPath
|
|
IntentFilter.addDataPath()} with
|
|
{@link android.os.PatternMatcher#PATTERN_LITERAL}. -->
|
|
<attr name="path" />
|
|
<!-- Specify a URI path that must be a prefix to match, as per
|
|
{@link android.content.IntentFilter#addDataPath
|
|
IntentFilter.addDataPath()} with
|
|
{@link android.os.PatternMatcher#PATTERN_PREFIX}. -->
|
|
<attr name="pathPrefix" />
|
|
<!-- Specify a URI path that matches a simple pattern, as per
|
|
{@link android.content.IntentFilter#addDataPath
|
|
IntentFilter.addDataPath()} with
|
|
{@link android.os.PatternMatcher#PATTERN_SIMPLE_GLOB}.
|
|
Note that because '\' is used as an escape character when
|
|
reading the string from XML (before it is parsed as a pattern),
|
|
you will need to double-escape: for example a literal "*" would
|
|
be written as "\\*" and a literal "\" would be written as
|
|
"\\\\". This is basically the same as what you would need to
|
|
write if constructing the string in Java code. -->
|
|
<attr name="pathPattern" />
|
|
</declare-styleable>
|
|
|
|
<!-- Attributes that can be supplied in an AndroidManifest.xml
|
|
<code>category</code> tag, a child of the
|
|
{@link #AndroidManifestIntentFilter intent-filter} tag.
|
|
See {@link android.content.IntentFilter#addCategory} for
|
|
more information. -->
|
|
<declare-styleable name="AndroidManifestCategory" parent="AndroidManifestIntentFilter">
|
|
<!-- The name of category that is handled, using the Java-style
|
|
naming convention. For example, to support
|
|
{@link android.content.Intent#CATEGORY_LAUNCHER Intent.CATEGORY_LAUNCHER}
|
|
you would put <code>android.intent.category.LAUNCHER</code> here.
|
|
Custom actions should generally use a prefix matching the
|
|
package name. -->
|
|
<attr name="name" />
|
|
</declare-styleable>
|
|
|
|
<!-- Attributes that can be supplied in an AndroidManifest.xml
|
|
<code>instrumentation</code> tag, a child of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestInstrumentation" parent="AndroidManifest">
|
|
<!-- Required name of the class implementing the instrumentation, deriving from
|
|
{@link android.app.Instrumentation}. This is a fully
|
|
qualified class name (for example, com.mycompany.myapp.MyActivity); as a
|
|
short-hand if the first character of the class
|
|
is a period then it is appended to your package name. -->
|
|
<attr name="name" />
|
|
<attr name="targetPackage" />
|
|
<attr name="label" />
|
|
<attr name="icon" />
|
|
<attr name="banner" />
|
|
<attr name="logo" />
|
|
<attr name="handleProfiling" />
|
|
<attr name="functionalTest" />
|
|
</declare-styleable>
|
|
|
|
<!-- Attributes that can be supplied in an AndroidManifest.xml
|
|
<code>screen</code> tag, a child of <code>compatible-screens</code>,
|
|
which is itself a child of the root
|
|
{@link #AndroidManifest manifest} tag. -->
|
|
<declare-styleable name="AndroidManifestCompatibleScreensScreen"
|
|
parent="AndroidManifest.AndroidManifestCompatibleScreens">
|
|
<!-- Specifies a compatible screen size, as per the device
|
|
configuration screen size bins. -->
|
|
<attr name="screenSize">
|
|
<!-- A small screen configuration, at least 240x320dp. -->
|
|
<enum name="small" value="200" />
|
|
<!-- A normal screen configuration, at least 320x480dp. -->
|
|
<enum name="normal" value="300" />
|
|
<!-- A large screen configuration, at least 400x530dp. -->
|
|
<enum name="large" value="400" />
|
|
<!-- An extra large screen configuration, at least 600x800dp. -->
|
|
<enum name="xlarge" value="500" />
|
|
</attr>
|
|
<!-- Specifies a compatible screen density, as per the device
|
|
configuration screen density bins. -->
|
|
<attr name="screenDensity" format="integer">
|
|
<!-- A low density screen, approximately 120dpi. -->
|
|
<enum name="ldpi" value="120" />
|
|
<!-- A medium density screen, approximately 160dpi. -->
|
|
<enum name="mdpi" value="160" />
|
|
<!-- A high density screen, approximately 240dpi. -->
|
|
<enum name="hdpi" value="240" />
|
|
<!-- An extra high density screen, approximately 320dpi. -->
|
|
<enum name="xhdpi" value="320" />
|
|
<!-- An extra extra high density screen, approximately 480dpi. -->
|
|
<enum name="xxhdpi" value="480" />
|
|
<!-- An extra extra extra high density screen, approximately 640dpi. -->
|
|
<enum name="xxxhdpi" value="640" />
|
|
</attr>
|
|
</declare-styleable>
|
|
|
|
<!-- The <code>input-type</code> tag is a child of the <code>supports-input</code> tag, which
|
|
is itself a child of the root {@link #AndroidManifest manifest} tag. Each
|
|
<code>input-type</code> tag specifices the name of a specific input device type. When
|
|
grouped with the other elements of the parent <code>supports-input</code> tag it defines
|
|
a collection of input devices, which when all used together, are considered a supported
|
|
input mechanism for the application. There may be multiple <code>supports-input</code>
|
|
tags defined, each containing a different combination of input device types. -->
|
|
<declare-styleable name="AndroidManifestSupportsInputInputType"
|
|
parent="AndroidManifest.AndroidManifestSupportsInput">
|
|
<!-- Specifices the name of the input device type -->
|
|
<attr name="name" />
|
|
</declare-styleable>
|
|
|
|
<!-- The attribute that holds a Base64-encoded public key. -->
|
|
<attr name="publicKey" format="string" />
|
|
|
|
<!-- Attributes relating to a package verifier. -->
|
|
<declare-styleable name="AndroidManifestPackageVerifier" parent="AndroidManifest">
|
|
<!-- Specifies the Java-style package name that defines this
|
|
package verifier. -->
|
|
<attr name="name" />
|
|
|
|
<!-- The Base64 encoded public key of the package verifier's
|
|
signature. -->
|
|
<attr name="publicKey" />
|
|
</declare-styleable>
|
|
|
|
<!-- Attributes relating to resource overlay packages. -->
|
|
<declare-styleable name="AndroidManifestResourceOverlay" parent="AndroidManifest">
|
|
<!-- Package name of base package whose resources will be overlaid. -->
|
|
<attr name="targetPackage" />
|
|
|
|
<!-- Load order of overlay package. -->
|
|
<attr name="priority" />
|
|
|
|
</declare-styleable>
|
|
|
|
<!-- Declaration of an {@link android.content.Intent} object in XML. May
|
|
also include zero or more {@link #IntentCategory <category> and
|
|
{@link #Extra <extra>} tags. -->
|
|
<declare-styleable name="Intent">
|
|
<!-- The action name to assign to the Intent, as per
|
|
{@link android.content.Intent#setAction Intent.setAction()}. -->
|
|
<attr name="action" format="string" />
|
|
<!-- The data URI to assign to the Intent, as per
|
|
{@link android.content.Intent#setData Intent.setData()}.
|
|
<p><em>Note: scheme and host name matching in the Android framework is
|
|
case-sensitive, unlike the formal RFC. As a result,
|
|
URIs here should always be normalized to use lower case letters
|
|
for these elements (as well as other proper Uri normalization).</em></p> -->
|
|
<attr name="data" format="string" />
|
|
<!-- The MIME type name to assign to the Intent, as per
|
|
{@link android.content.Intent#setType Intent.setType()}.
|
|
<p><em>Note: MIME type matching in the Android framework is
|
|
case-sensitive, unlike formal RFC MIME types. As a result,
|
|
MIME types here should always use lower case letters.</em></p> -->
|
|
<attr name="mimeType" />
|
|
<!-- The package part of the ComponentName to assign to the Intent, as per
|
|
{@link android.content.Intent#setComponent Intent.setComponent()}. -->
|
|
<attr name="targetPackage" />
|
|
<!-- The class part of the ComponentName to assign to the Intent, as per
|
|
{@link android.content.Intent#setComponent Intent.setComponent()}. -->
|
|
<attr name="targetClass" format="string" />
|
|
</declare-styleable>
|
|
|
|
<!-- A category to add to an Intent, as per
|
|
{@link android.content.Intent#addCategory Intent.addCategory()}. -->
|
|
<declare-styleable name="IntentCategory" parent="Intent">
|
|
<!-- Required name of the category. -->
|
|
<attr name="name" />
|
|
</declare-styleable>
|
|
|
|
<!-- An extra data value to place into a an extra/name value pair held
|
|
in a Bundle, as per {@link android.os.Bundle}. -->
|
|
<declare-styleable name="Extra" parent="Intent">
|
|
<!-- Required name of the extra data. -->
|
|
<attr name="name" />
|
|
<!-- Concrete value to put for this named extra data. -->
|
|
<attr name="value" />
|
|
</declare-styleable>
|
|
|
|
<!-- Groups signing keys into a {@code KeySet} for easier reference in
|
|
other APIs. However, currently no APIs use this. -->
|
|
<attr name="keySet" />
|
|
<declare-styleable name="AndroidManifestPublicKey">
|
|
<attr name="name" />
|
|
<attr name="value" />
|
|
</declare-styleable>
|
|
<declare-styleable name="AndroidManifestKeySet">
|
|
<attr name="name" />
|
|
</declare-styleable>
|
|
|
|
<!-- Associate declared KeySets with upgrading capability -->
|
|
<declare-styleable name="AndroidManifestUpgradeKeySet" parent="AndroidManifest">
|
|
<attr name="name" />
|
|
</declare-styleable>
|
|
|
|
</resources>
|