aab

package module
v0.0.0-...-d4747f6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 19, 2025 License: MIT Imports: 14 Imported by: 0

README

aab-parser

Build Status

Android App Bundle file parser

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Aab

type Aab struct {
	// contains filtered or unexported fields
}

func OpenFile

func OpenFile(filename string) (apk *Aab, err error)

func OpenZipReader

func OpenZipReader(r io.ReaderAt, size int64) (*Aab, error)

func (*Aab) Close

func (a *Aab) Close() error

func (*Aab) Icon

func (a *Aab) Icon(config *pb.Configuration) (image.Image, error)

func (*Aab) Label

func (a *Aab) Label(config *pb.Configuration) string

func (*Aab) Manifest

func (a *Aab) Manifest() *Manifest

func (*Aab) PackageName

func (a *Aab) PackageName() string

func (*Aab) VersionCode

func (a *Aab) VersionCode() int64

func (*Aab) VersionName

func (a *Aab) VersionName() string

type ActivityAction

type ActivityAction struct {
	Name string `xml:"http://schemas.android.com/apk/res/android name,attr"`
}

ActivityAction is an action of an activity.

type ActivityCategory

type ActivityCategory struct {
	Name string `xml:"http://schemas.android.com/apk/res/android name,attr"`
}

ActivityCategory is a category of an activity.

type ActivityIntentFilter

type ActivityIntentFilter struct {
	Actions    []ActivityAction   `xml:"action"`
	Categories []ActivityCategory `xml:"category"`
}

ActivityIntentFilter is an int32ent filter of an activity.

type AppActivity

type AppActivity struct {
	Theme             string                 `xml:"http://schemas.android.com/apk/res/android theme,attr"`
	Name              string                 `xml:"http://schemas.android.com/apk/res/android name,attr"`
	Label             string                 `xml:"http://schemas.android.com/apk/res/android label,attr"`
	ScreenOrientation string                 `xml:"http://schemas.android.com/apk/res/android screenOrientation,attr"`
	IntentFilters     []ActivityIntentFilter `xml:"intent-filter"`
}

AppActivity is an activity in an application.

type AppActivityAlias

type AppActivityAlias struct {
	Name           string                 `xml:"http://schemas.android.com/apk/res/android name,attr"`
	Label          string                 `xml:"http://schemas.android.com/apk/res/android label,attr"`
	TargetActivity string                 `xml:"http://schemas.android.com/apk/res/android targetActivity,attr"`
	IntentFilters  []ActivityIntentFilter `xml:"intent-filter"`
}

AppActivityAlias https://developer.android.com/guide/topics/manifest/activity-alias-element

type Application

type Application struct {
	AllowTaskReparenting  bool               `xml:"http://schemas.android.com/apk/res/android allowTaskReparenting,attr"`
	AllowBackup           bool               `xml:"http://schemas.android.com/apk/res/android allowBackup,attr"`
	BackupAgent           string             `xml:"http://schemas.android.com/apk/res/android backupAgent,attr"`
	Debuggable            bool               `xml:"http://schemas.android.com/apk/res/android debuggable,attr"`
	Description           string             `xml:"http://schemas.android.com/apk/res/android description,attr"`
	Enabled               bool               `xml:"http://schemas.android.com/apk/res/android enabled,attr"`
	HasCode               bool               `xml:"http://schemas.android.com/apk/res/android hasCode,attr"`
	HardwareAccelerated   bool               `xml:"http://schemas.android.com/apk/res/android hardwareAccelerated,attr"`
	Icon                  string             `xml:"http://schemas.android.com/apk/res/android icon,attr"`
	KillAfterRestore      bool               `xml:"http://schemas.android.com/apk/res/android killAfterRestore,attr"`
	LargeHeap             bool               `xml:"http://schemas.android.com/apk/res/android largeHeap,attr"`
	Label                 string             `xml:"http://schemas.android.com/apk/res/android label,attr"`
	ManageSpaceActivity   string             `xml:"http://schemas.android.com/apk/res/android manageSpaceActivity,attr"`
	Name                  string             `xml:"http://schemas.android.com/apk/res/android name,attr"`
	Permission            string             `xml:"http://schemas.android.com/apk/res/android permission,attr"`
	Persistent            bool               `xml:"http://schemas.android.com/apk/res/android persistent,attr"`
	Process               string             `xml:"http://schemas.android.com/apk/res/android process,attr"`
	RestoreAnyVersion     bool               `xml:"http://schemas.android.com/apk/res/android restoreAnyVersion,attr"`
	RequiredAccountType   string             `xml:"http://schemas.android.com/apk/res/android requiredAccountType,attr"`
	RestrictedAccountType string             `xml:"http://schemas.android.com/apk/res/android restrictedAccountType,attr"`
	SupportsRtl           bool               `xml:"http://schemas.android.com/apk/res/android supportsRtl,attr"`
	TaskAffinity          string             `xml:"http://schemas.android.com/apk/res/android taskAffinity,attr"`
	TestOnly              bool               `xml:"http://schemas.android.com/apk/res/android testOnly,attr"`
	Theme                 string             `xml:"http://schemas.android.com/apk/res/android theme,attr"`
	UIOptions             string             `xml:"http://schemas.android.com/apk/res/android uiOptions,attr"`
	VMSafeMode            bool               `xml:"http://schemas.android.com/apk/res/android vmSafeMode,attr"`
	Activities            []AppActivity      `xml:"activity"`
	ActivityAliases       []AppActivityAlias `xml:"activity-alias"`
	MetaData              []MetaData         `xml:"meta-data"`
}

Application is an application in an APK.

type Instrumentation

type Instrumentation struct {
	Name            string `xml:"http://schemas.android.com/apk/res/android name,attr"`
	Target          string `xml:"http://schemas.android.com/apk/res/android targetPackage,attr"`
	HandleProfiling bool   `xml:"http://schemas.android.com/apk/res/android handleProfiling,attr"`
	FunctionalTest  bool   `xml:"http://schemas.android.com/apk/res/android functionalTest,attr"`
}

type Manifest

type Manifest struct {
	Package                   string           `xml:"package,attr"`
	CompileSDKVersion         int32            `xml:"http://schemas.android.com/apk/res/android compileSdkVersion,attr"`
	CompileSDKVersionCodename string           `xml:"http://schemas.android.com/apk/res/android compileSdkVersionCodename,attr"`
	VersionCode               int64            `xml:"http://schemas.android.com/apk/res/android versionCode,attr"`
	VersionName               string           `xml:"http://schemas.android.com/apk/res/android versionName,attr"`
	App                       Application      `xml:"application"`
	Instrument                Instrumentation  `xml:"instrumentation"`
	SDK                       UsesSDK          `xml:"uses-sdk"`
	UsesPermissions           []UsesPermission `xml:"uses-permission"`
}

Manifest is a manifest of an APK.

type MetaData

type MetaData struct {
	Name  string `xml:"http://schemas.android.com/apk/res/android name,attr"`
	Value string `xml:"http://schemas.android.com/apk/res/android value,attr"`
}

MetaData is a metadata in an application.

type UsesPermission

type UsesPermission struct {
	Name string `xml:"http://schemas.android.com/apk/res/android name,attr"`
	Max  int32  `xml:"http://schemas.android.com/apk/res/android maxSdkVersion,attr"`
}

UsesPermission is user grant the system permission.

type UsesSDK

type UsesSDK struct {
	Min    int32 `xml:"http://schemas.android.com/apk/res/android minSdkVersion,attr"`
	Target int32 `xml:"http://schemas.android.com/apk/res/android targetSdkVersion,attr"`
	Max    int32 `xml:"http://schemas.android.com/apk/res/android maxSdkVersion,attr"`
}

UsesSDK is target SDK version.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL