Python API¶
from apk_info import APK, APKError
try:
apk = APK("app.apk")
except APKError as e:
print(f"not an APK: {e}")
Everything goes through the APK class:
- The constructor accepts
stror anyPurePath, and raisesFileNotFoundErrorfor a missing file andAPKErrorif the file can't be parsed. - The constructor opens XAPK, APKM and APKS files through their base APK.
- Manifest getters return
str | None. They return values as written in the manifest, so booleans are"true"/"false"and versions are strings. get_target_sdk_version()returns anint; it falls back tomin_sdk_version, or1when neither is set.- Collections are
setwhen order doesn't matter (permissions, features) andlistwhen it does (main activities). get_signatures()returnsSignature.*dataclasses for use inmatchstatements. See the Quickstart.
mkdocstrings generates the API below from the type stubs that ship with the package.
SignatureType
¶
SignatureType = ApkChannelBlock | GooglePlayFrosting | PackerNextGenV2 | StampBlockV1 | StampBlockV2 | V1 | V2 | V3 | V31 | V32 | VasDollyV2 | ByteDance
Represents all available signatures
APK
¶
anomalies
¶
Inspects the APK for structural defects: tampered zip headers (BadPack), a damaged manifest or resource table, and the like.
Not part of the constructor: it reads the local header of every zip
entry, once per call. For a xapk/apkm/apks container both the
container and its base APK are checked.
Returns:
| Type | Description |
|---|---|
list[Anomaly]
|
The defects found, empty for a well-formed APK |
get_activities
¶
Retrieves all <activity> components declared in the manifest.
See: https://developer.android.com/guide/topics/manifest/activity-element
Returns:
| Type | Description |
|---|---|
list[Activity]
|
A list of found activities |
get_activity_aliases
¶
Retrieves all <activity-alias> components declared in the manifest.
See: https://developer.android.com/guide/topics/manifest/activity-alias-element
Returns:
| Type | Description |
|---|---|
list[ActivityAlias]
|
A list of found aliases |
get_all_attribute_values
¶
get_application_allow_backup
¶
Extracts the android:allowBackup attribute from <application>.
See: https://developer.android.com/guide/topics/manifest/application-element#allowbackup
Returns:
| Type | Description |
|---|---|
true | false
|
If value is declared |
None
|
If value is not declared |
get_application_backup_agent
¶
Extracts the android:backupAgent attribute from <application>.
See: https://developer.android.com/guide/topics/manifest/application-element#agent
Examples:
Returns:
| Type | Description |
|---|---|
str | None
|
The name of the backup agent class if declared, otherwise None. |
get_application_category
¶
get_application_category() -> Literal['accessibility', 'audio', 'game', 'image', 'maps', 'news', 'productivity', 'social', 'video'] | None
Extracts the android:appCategory attribute from <application>.
See: https://developer.android.com/guide/topics/manifest/application-element#appCategory
Returns:
| Type | Description |
|---|---|
accessibility
|
Apps that are primarily accessibility apps, such as screen-readers |
audio
|
Apps that primarily work with audio or music, such as music players |
game
|
Apps that are primarily games |
image
|
Apps that primarily work with images or photos, such as camera or gallery apps |
maps
|
Apps that are primarily map apps, such as navigation apps |
news
|
Apps that are primarily news apps, such as newspapers, magazines, or sports apps |
productivity
|
Apps that are primarily productivity apps, such as cloud storage or workplace apps |
social
|
Apps that are primarily social apps, such as messaging, communication, email, or social network apps |
video
|
Apps that primarily work with video or movies, such as streaming video apps |
None
|
Value not defined |
get_application_debuggable
¶
Extracts the android:debuggable attribute from <application>.
See: https://developer.android.com/guide/topics/manifest/application-element#debug
Returns:
| Type | Description |
|---|---|
str | None
|
"true" or "false" if declared, otherwise None. |
get_application_description
¶
Extracts and resolve the android:description attribute from <application>.
See: https://developer.android.com/guide/topics/manifest/application-element#desc
Notes
The link to the resource will be automatically resolved and this value will be returned
Returns:
| Type | Description |
|---|---|
str | None
|
The description resource or literal value, if available. |
get_application_icon
¶
Extracts and resolves the android:icon attribute from <application>
See: https://developer.android.com/guide/topics/manifest/application-element#icon
Notes
There is no way to choose a resolution yet, it will be implemented in the future.
Examples:
apk = APK("./file")
icon = apk.get_application_icon()
if icon:
# it's not always png, maybe webp or even xml.
with open("icon.png", "wb") as fd:
fd.write(apk.read(icon)[0])
Returns:
| Type | Description |
|---|---|
str | None
|
The path to the icon file, if available. |
get_application_label
¶
Extracts and resolves the android:label attribute from <application>.
See: https://developer.android.com/guide/topics/manifest/application-element#label
Notes
The link to the resource will be automatically resolved and this value will be returned
Returns:
| Type | Description |
|---|---|
str | None
|
The label resource or literal value, if available |
get_application_logo
¶
Extracts and resolves the android:logo attribute from <application>
See: https://developer.android.com/guide/topics/manifest/application-element#logo
Examples:
apk = APK("./file")
logo = apk.get_application_logo()
if logo:
# it's not always png, maybe webp or even xml.
with open("logo.png", "wb") as fd:
fd.write(apk.read(logo))
Returns:
| Type | Description |
|---|---|
str | None
|
The path to the logo file, if available |
get_application_name
¶
Extracts the android:name attribute from <application>.
See: https://developer.android.com/guide/topics/manifest/application-element#nm
Examples:
Returns:
| Type | Description |
|---|---|
str | None
|
The fully qualified application class name, if defined. |
get_application_task_reparenting
¶
Extracts the android:allowTaskReparenting attribute from <application>.
See: https://developer.android.com/guide/topics/manifest/application-element#reparent
Returns:
| Type | Description |
|---|---|
true | false
|
If value is declared |
None
|
If value is not declared |
get_attribute_value
¶
An auxiliary method that allows you to get the attribute value directly from AndroidManifest.xml.
If the value is a link to a resource, it will be automatically resolved to the file name.
Examples:
apk = APK("./file")
security_config = apk.get_attribute_value("application", "networkSecurityConfig")
if security_config:
with open("network_security_config.xml", "wb") as fd:
fd.write(apk.read(security_config))
Example of how to get additional information from the
get_attributions
¶
Extracts the <attribution tag from <manifest>
See: https://developer.android.com/guide/topics/manifest/attribution-element
Returns:
| Type | Description |
|---|---|
set[Attribution]
|
All found attribution tags |
get_build_version_code
¶
Retrieves the platformBuildVersionCode from the <manifest> element.
Returns:
| Type | Description |
|---|---|
str | None
|
The version name as a string if present, otherwise None |
get_build_version_name
¶
Retrieves the platformBuildVersionName from the <manifest> element.
Returns:
| Type | Description |
|---|---|
str | None
|
The version name as a string if present, otherwise None |
get_compile_sdk_version
¶
Retrieves the compileSdkVersion from the <manifest> element.
Returns:
| Type | Description |
|---|---|
str | None
|
The sdk version as a string if present, otherwise None |
get_compile_sdk_version_codename
¶
Retrieves the compileSdkVersionCodename from the <manifest> element.
Returns:
| Type | Description |
|---|---|
str | None
|
The sdk version codename as a string if present, otherwise None |
get_container_signatures
¶
Returns the container signature of a xapk/apkm/apks file, if signed.
This is the signature of the outer archive that carries the split
APKs. It belongs to the distributor, not to the app.
Most xapk/apkm/apks containers are unsigned, so an empty result is
expected and normal.
Raises:
| Type | Description |
|---|---|
APKError
|
If the certificates could not be parsed |
Returns:
| Type | Description |
|---|---|
list[SignatureType]
|
A list of certificate signatures |
get_declared_permissions
¶
Retrieves all user defines permissions.
See: https://developer.android.com/guide/topics/manifest/permission-element
Returns:
| Type | Description |
|---|---|
set[str]
|
A set of permission names defined by the application |
get_features
¶
Retrieves all hardware or software features declared by <uses-feature android:name="...">
See: https://developer.android.com/guide/topics/manifest/uses-feature-element
Returns:
| Type | Description |
|---|---|
set[str]
|
A set of declared feature names |
get_install_location
¶
Retrieves the preferred installation location declared in the manifest.
See: https://developer.android.com/guide/topics/manifest/manifest-element#install
Returns:
| Type | Description |
|---|---|
auto
|
Let the system decide ideal install location |
internalOnly
|
Explicitly request to be installed on internal phone storage only |
preferExternal
|
Prefer to be installed on SD card |
None
|
The installation location is not specified |
get_libraries
¶
Retrieves all libraries declared by <uses-library android:name="...">.
See: https://developer.android.com/guide/topics/manifest/uses-library-element
Returns:
| Type | Description |
|---|---|
set[str]
|
A set of library names |
get_main_activities
¶
Retrieves all main (launchable) activities defined in the manifest.
A main activity is typically one that has an intent filter with actions MAIN and categories LAUNCHER or INFO.
See: https://developer.android.com/guide/topics/manifest/activity-element
Resolve logic: https://xrefandroid.com/android-16.0.0_r2/xref/frameworks/base/core/java/android/app/ApplicationPackageManager.java#310
Returns:
| Type | Description |
|---|---|
list[str]
|
A list of main activity class names |
get_main_activity
¶
Retrieves first main (launchable) activity defined in the manifest.
A main activity is typically one that has an intent filter with actions MAIN and categories LAUNCHER or INFO.
See: https://developer.android.com/guide/topics/manifest/activity-element
Resolve logic: https://xrefandroid.com/android-16.0.0_r2/xref/frameworks/base/core/java/android/app/ApplicationPackageManager.java#310
Examples:
Sometimes there may be a full name, depending on the application. The library returns the value as is as in the manifest, without additional actions.
Returns:
| Type | Description |
|---|---|
str | None
|
A main activity class name |
get_max_sdk_version
¶
Retrieves the maximum supported SDK version (maxSdkVersion) if declared.
See: https://developer.android.com/guide/topics/manifest/uses-sdk-element#max
Returns:
| Type | Description |
|---|---|
str | None
|
The maximum SDK version as a string, or None if not specified |
get_min_sdk_version
¶
Extracts the minimum supported SDK version (minSdkVersion) from the <uses-sdk> element
See: https://developer.android.com/guide/topics/manifest/uses-sdk-element#min
Examples:
Returns:
| Type | Description |
|---|---|
str | None
|
The minimum SDK version as a string, or None if not specified. |
get_native_libraries
¶
Retrieves all native libraries declared by <uses-native-library android:name="...">
See: https://developer.android.com/guide/topics/manifest/uses-native-library-element
Returns:
| Type | Description |
|---|---|
set[str]
|
A set of native library names |
get_package_name
¶
Retrieves the package name declared in the <manifest> element.
See: https://developer.android.com/guide/topics/manifest/manifest-element#package
Returns:
| Type | Description |
|---|---|
str | None
|
The package name (e.g., "com.example.app") if found, otherwise None |
get_permissions
¶
Retrieves all permissions names from <uses-permission>
See: https://developer.android.com/guide/topics/manifest/uses-permission-element
Returns:
| Type | Description |
|---|---|
set[str]
|
A list of all permission names (e.g., "android.permission.INTERNET"). |
get_permissions_sdk23
¶
Retrieves all declared permissions for API level 23 and above from <uses-permission-sdk-23> elements
See: https://developer.android.com/guide/topics/manifest/uses-permission-sdk-23-element
Returns:
| Type | Description |
|---|---|
set[str]
|
A set of permission names |
get_providers
¶
get_receivers
¶
Retrieves all <receiver> components declared in the manifest.
See: https://developer.android.com/guide/topics/manifest/receiver-element
Returns:
| Type | Description |
|---|---|
list[Receiver]
|
A list of broadcast receivers |
get_resource_value
¶
An auxiliary method that allows you to get a value from a reference to a resource
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
name
|
str
|
The reference to the resource in the |
required |
Examples:
Returns:
| Type | Description |
|---|---|
str | None
|
If something was found, the value will be returned. It can be a string, a file path, etc., depending on the context in which this function is used. |
get_services
¶
Retrieves all <service> components declared in the manifest.
See: https://developer.android.com/guide/topics/manifest/service-element
Returns:
| Type | Description |
|---|---|
list[Service]
|
A list of found services |
get_shared_user_id
¶
Retrieves the sharedUserId attribute from the <manifest> element.
See: https://developer.android.com/guide/topics/manifest/manifest-element#uid
Returns:
| Type | Description |
|---|---|
str | None
|
The shared user ID if declared, otherwise None |
get_shared_user_label
¶
Retrieves the sharedUserLabel attribute from the <manifest> element.
See: https://developer.android.com/guide/topics/manifest/manifest-element#uidlabel
Returns:
| Type | Description |
|---|---|
str | None
|
The shared user label if declared, otherwise None. |
get_shared_user_max_sdk_version
¶
Retrieves the sharedUserMaxSdkVersion attribute from the <manifest> element.
See: https://developer.android.com/guide/topics/manifest/manifest-element#uidmaxsdk
Returns:
| Type | Description |
|---|---|
str | None
|
The maximum SDK version for the shared user, if declared |
get_signatures
¶
Returns the app signatures (v1, v2, v3, v3.1, etc).
For a plain APK this is the signature of the file itself.
For a xapk/apkm/apks container this is the signature of the inner base
APK, which is the actual app identity.
See get_container_signatures for the signature of the container itself.
Raises:
| Type | Description |
|---|---|
APKError
|
If the certificates could not be parsed |
Returns:
| Type | Description |
|---|---|
list[SignatureType]
|
A list of certificate signatures |
get_supported_abis
¶
get_target_sdk_version
¶
Extracts the target SDK version (targetSdkVersion) from the <uses-sdk> element.
See: https://developer.android.com/guide/topics/manifest/uses-sdk-element#target
Notes
Determines the version based on the following algorithm:
- Check
targetSdkVersion; - If empty => check
minSdkVersion; - If empty => return 1;
Returns:
| Type | Description |
|---|---|
int
|
The target SDK version |
get_version_code
¶
Retrieves the application version code.
See: https://developer.android.com/guide/topics/manifest/manifest-element#vcode
Examples:
Notes
The automatic conversion to int was not done on purpose,
because there is no certainty that malware will not try to insert random values there
Returns:
| Type | Description |
|---|---|
str | None
|
The version code as a string if present, otherwise None |
get_version_name
¶
Retrieves the human-readable application version name.
See: https://developer.android.com/guide/topics/manifest/manifest-element#vname
Examples:
Returns:
| Type | Description |
|---|---|
str | None
|
The version name as a string if present, otherwise None |
get_xml_string
¶
Converts the internal xml representation of the AndroidManifest.xml to a human readable format
Returns:
| Type | Description |
|---|---|
str
|
pretty-printed AndroidManifest.xml |
is_automotive
¶
Checks whether the app is designed to display its user interface on multiple screens inside the vehicle.
See: https://developer.android.com/guide/topics/manifest/uses-feature-element#device-ui-hw-features
is_chromebook
¶
Checks whether app is designed to show its UI on Chromebooks.
See: https://developer.android.com/guide/topics/manifest/uses-feature-element#device-ui-hw-features
is_leanback
¶
Checks whether the app is designed to show its UI on a television.
See: https://developer.android.com/guide/topics/manifest/uses-feature-element#device-ui-hw-features
is_multidex
¶
is_tampered
¶
Checks whether the APK shows a known technique against static
analysis, i.e. any anomaly with the tampered severity.
Runs the full anomalies scan; call that instead when the details
are needed as well.
Returns:
| Type | Description |
|---|---|
bool
|
True if any anomaly is rated |
is_wearable
¶
Checks whether the app is designed to show its UI on a watch.
See: https://developer.android.com/guide/topics/manifest/uses-feature-element#device-ui-hw-features
is_xr
¶
Checks whether the app is designed to show its UI on Android XR headsets,
via the Jetpack XR SDK (android.software.xr.api.spatial) or OpenXR (android.software.xr.api.openxr).
See: https://developer.android.com/develop/xr/package-and-distribute
namelist
¶
The list of files contained in the APK, obtained from the central directory (zip)
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
base
|
bool
|
List the base APK instead of the file itself. For |
False
|
Examples:
read
¶
read(filename: str, base: bool = False) -> tuple[bytes, Literal['stored', 'deflated', 'stored_tampered', 'deflated_tampered']]
Read raw data for the filename in the zip archive
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
filename
|
str
|
The path to the file inside the APK archive |
required |
base
|
bool
|
Read from the base APK instead of the file itself. For |
False
|
Raises:
| Type | Description |
|---|---|
PyValueError
|
If the passed name could not be converted to a rust string |
APKError
|
If there are problems reading the file |
Examples:
Activity
¶
An <activity> element.
enabled
¶
Whether the activity can be instantiated by the system.
See: https://developer.android.com/guide/topics/manifest/activity-element#enabled
exported
¶
Whether the activity can be launched by components of other applications.
See: https://developer.android.com/guide/topics/manifest/activity-element#exported
icon
¶
An icon representing the activity.
See: https://developer.android.com/guide/topics/manifest/activity-element#icon
intent_filters
¶
A list of all declared <intent-filter> for a given activity
See: https://developer.android.com/guide/topics/manifest/intent-filter-element
label
¶
A user-readable label for the activity.
See: https://developer.android.com/guide/topics/manifest/activity-element#label
name
¶
The name of the class that implements the activity, a subclass of Activity.
See: https://developer.android.com/guide/topics/manifest/activity-element#nm
parent_activity_name
¶
The class name of the logical parent of the activity.
See: https://developer.android.com/guide/topics/manifest/activity-element#parent
permission
¶
The name of a permission that clients must have to launch the activity or otherwise get it to respond to an intent.
See: https://developer.android.com/guide/topics/manifest/activity-element#prmsn
process
¶
The name of the process in which the activity runs.
See: https://developer.android.com/guide/topics/manifest/activity-element#proc
ActivityAlias
¶
An <activity-alias> element.
enabled
¶
Whether the target activity can be instantiated by the system through this alias.
See: https://developer.android.com/guide/topics/manifest/activity-alias-element#enabled
exported
¶
Whether the components of other applications can launch the target activity through this alias.
See: https://developer.android.com/guide/topics/manifest/activity-alias-element#exported
icon
¶
An icon for the target activity when presented to users through the alias.
See: https://developer.android.com/guide/topics/manifest/activity-alias-element#icon
intent_filters
¶
A list of all declared <intent-filter> for a given activity
See: https://developer.android.com/guide/topics/manifest/intent-filter-element
label
¶
A user-readable label for the alias when presented to users through the alias.
See: https://developer.android.com/guide/topics/manifest/activity-alias-element#label
name
¶
A unique name for the alias.
See: https://developer.android.com/guide/topics/manifest/activity-alias-element#nm
permission
¶
The name of a permission that clients must have to launch the target activity or get it to do something using the alias.
See: https://developer.android.com/guide/topics/manifest/activity-alias-element#prmsn
target_activity
¶
The name of the activity that can be activated through the alias.
See: https://developer.android.com/guide/topics/manifest/activity-alias-element#trgt
Anomaly
¶
A structural defect of an apk.
location
¶
Where: an entry name, base.apk!classes.dex for an entry of a
container's base APK, or None for the archive itself
severity
¶
How strongly the anomaly points at tampering:
info: a quirk that ordinary build tools produce too;suspicious: no ordinary build tool produces it, but plain corruption, an exotic tool or a commercial protector can;tampered: a known technique against static analysis tools.
Attribution
¶
An <attribution> element.
label
¶
A string resource that describes a particular capability.
See: https://developer.android.com/guide/topics/manifest/attribution-element#label
tag
¶
A literal string that serves as a label for a particular capability.
See: https://developer.android.com/guide/topics/manifest/attribution-element#tag
CertificateInfo
¶
A signing certificate.
serial_number
¶
The serial number of the certificate in hexadecimal representation
IntentFilter
¶
An <intent-filter> of a component.
Permission
¶
A <permission> the app declares.
description
¶
A user-readable description of the permission that is longer and more informative than the label.
See: https://developer.android.com/guide/topics/manifest/permission-element#desc
icon
¶
A reference to a drawable resource for an icon that represents the permission.
See: https://developer.android.com/guide/topics/manifest/permission-element#icon
label
¶
A user-readable name for the permission.
See: https://developer.android.com/guide/topics/manifest/permission-element#label
name
¶
The name to be used in code to refer to the permission, such as in a
See: https://developer.android.com/guide/topics/manifest/permission-element#nm
permission_group
¶
Assigns this permission to a group.
See: https://developer.android.com/guide/topics/manifest/permission-element#pgroup
protection_level
¶
Characterizes the potential risk implied in the permission and indicates the procedure for the system to follow when determining whether to grant the permission to an application requesting it.
See: https://developer.android.com/guide/topics/manifest/permission-element#plevel
Provider
¶
A <provider> element.
authorities
¶
A list of URI authorities identifying data offered by the content provider.
See: https://developer.android.com/guide/topics/manifest/provider-element#auth
direct_boot_aware
¶
Whether the content provider is Direct Boot aware.
See: https://developer.android.com/guide/topics/manifest/provider-element#directBootAware
enabled
¶
Whether the content provider can be instantiated by the system.
See: https://developer.android.com/guide/topics/manifest/provider-element#enabled
exported
¶
Whether the content provider is available for other applications to use.
See: https://developer.android.com/guide/topics/manifest/provider-element#exported
grant_uri_permissions
¶
Whether temporary URI permissions can be granted to access the provider’s data.
See: https://developer.android.com/guide/topics/manifest/provider-element#granturi
icon
¶
An icon representing the content provider.
See: https://developer.android.com/guide/topics/manifest/provider-element#icon
init_order
¶
The order in which the provider is instantiated relative to others in the same process.
See: https://developer.android.com/guide/topics/manifest/provider-element#init
label
¶
A user-readable label for the content provider.
See: https://developer.android.com/guide/topics/manifest/provider-element#label
multiprocess
¶
Whether multiple instances of the provider are created in multiprocess apps.
See: https://developer.android.com/guide/topics/manifest/provider-element#multiprocess
name
¶
The name of the class implementing the content provider.
See: https://developer.android.com/guide/topics/manifest/provider-element#nm
permission
¶
A permission required to read or write the provider’s data.
See: https://developer.android.com/guide/topics/manifest/provider-element#prmsn
process
¶
The name of the process where the provider runs.
See: https://developer.android.com/guide/topics/manifest/provider-element#proc
read_permission
¶
A permission that clients must have to read the provider’s data.
See: https://developer.android.com/guide/topics/manifest/provider-element#read
syncable
¶
Whether the provider’s data can be synchronized with a server.
See: https://developer.android.com/guide/topics/manifest/provider-element#syncable
write_permission
¶
A permission that clients must have to modify the provider’s data.
See: https://developer.android.com/guide/topics/manifest/provider-element#write
Receiver
¶
A <receiver> element.
direct_boot_aware
¶
Indicates whether the broadcast receiver is direct boot aware.
See: https://developer.android.com/guide/topics/manifest/receiver-element#enabled
enabled
¶
Whether the broadcast receiver can be instantiated by the system.
See: developer.android.com/guide/topics/manifest/receiver-element#enabled
exported
¶
Specifies whether the broadcast receiver is accessible to other applications.
See: https://developer.android.com/guide/topics/manifest/receiver-element#exported
icon
¶
An icon representing the broadcast receiver in the user interface.
See: https://developer.android.com/guide/topics/manifest/receiver-element#icon
intent_filters
¶
A list of all declared <intent-filter> for a given receiver
See: https://developer.android.com/guide/topics/manifest/intent-filter-element
label
¶
A user-readable label for the broadcast receiver.
See: https://developer.android.com/guide/topics/manifest/receiver-element#label
name
¶
The fully qualified name of the broadcast receiver class that implements the receiver.
See: https://developer.android.com/guide/topics/manifest/receiver-element#nm
permission
¶
The name of a permission that broadcasters must hold to send messages to this receiver.
See: https://developer.android.com/guide/topics/manifest/receiver-element#prmsn
process
¶
The name of the process in which the broadcast receiver should run.
See: https://developer.android.com/guide/topics/manifest/receiver-element#proc
Service
¶
A <service> element.
description
¶
A user-readable description of the service.
See: https://developer.android.com/guide/topics/manifest/service-element#desc
direct_boot_aware
¶
Indicates whether the service is aware of Direct Boot mode.
See: https://developer.android.com/guide/topics/manifest/service-element#directBootAware
enabled
¶
Specifies whether the service can be instantiated by the system.
See: https://developer.android.com/guide/topics/manifest/service-element#enabled
exported
¶
Defines whether the service can be used by other applications.
See: https://developer.android.com/guide/topics/manifest/service-element#exported
foreground_service_type
¶
Lists the types of foreground services this service can run as.
See: https://developer.android.com/guide/topics/manifest/service-element#foregroundservicetype
icon
¶
An icon representing the service.
See: https://developer.android.com/guide/topics/manifest/service-element#icon
intent_filters
¶
A list of all declared <intent-filter> for a given service
See: https://developer.android.com/guide/topics/manifest/intent-filter-element
isolated_process
¶
Indicates whether the service runs in an isolated process.
See: https://developer.android.com/guide/topics/manifest/service-element#isolated
label
¶
A user-readable name for the service.
See: https://developer.android.com/guide/topics/manifest/service-element#label
name
¶
The fully qualified name of the service class that implements the service.
See: https://developer.android.com/guide/topics/manifest/service-element#nm
permission
¶
The name of a permission that clients must hold to use this service.
See: https://developer.android.com/guide/topics/manifest/service-element#prmsn
process
¶
The name of the process where the service should run.
See: https://developer.android.com/guide/topics/manifest/service-element#proc
stop_with_task
¶
Indicates whether the service should be stopped when its task is removed.
See: https://developer.android.com/guide/topics/manifest/service-element#stopWithTask
Signature
¶
A signature scheme or another block of the APK Signing Block.
The Python variants name their fields, unlike the Rust ones:
Signature.V1(certificates=[...]), Signature.ApkChannelBlock(value="...").
ApkChannelBlock
¶
Bases: apk_info._apk_info.Signature
ByteDance
¶
Bases: apk_info._apk_info.Signature
GooglePlayFrosting
¶
Bases: apk_info._apk_info.Signature
PackerNextGenV2
¶
Bases: apk_info._apk_info.Signature
StampBlockV1
¶
Bases: apk_info._apk_info.Signature
StampBlockV2
¶
Bases: apk_info._apk_info.Signature
V1
¶
Bases: apk_info._apk_info.Signature
V2
¶
Bases: apk_info._apk_info.Signature
V3
¶
Bases: apk_info._apk_info.Signature
V31
¶
Bases: apk_info._apk_info.Signature
V32
¶
Bases: apk_info._apk_info.Signature
VasDollyV2
¶
Bases: apk_info._apk_info.Signature