1
0
mirror of https://gitcode.com/github-mirrors/react-native-update-cli.git synced 2025-11-24 17:23:37 +08:00
Code Issues Packages Projects Releases Wiki Activity GitHub Gitee
This commit is contained in:
sunnylqm
2025-11-24 00:04:45 +08:00
parent cf679715a5
commit 7259efbd7d
12 changed files with 1283 additions and 8 deletions

183
proto/Configuration.proto Normal file
View File

@@ -0,0 +1,183 @@
syntax = "proto3";
package aapt.pb;
option java_package = "com.android.aapt";
message Configuration {
enum LayoutDirection {
LAYOUT_DIRECTION_UNSET = 0;
LAYOUT_DIRECTION_LTR = 1;
LAYOUT_DIRECTION_RTL = 2;
}
enum ScreenLayoutSize {
SCREEN_LAYOUT_SIZE_UNSET = 0;
SCREEN_LAYOUT_SIZE_SMALL = 1;
SCREEN_LAYOUT_SIZE_NORMAL = 2;
SCREEN_LAYOUT_SIZE_LARGE = 3;
SCREEN_LAYOUT_SIZE_XLARGE = 4;
}
enum ScreenLayoutLong {
SCREEN_LAYOUT_LONG_UNSET = 0;
SCREEN_LAYOUT_LONG_LONG = 1;
SCREEN_LAYOUT_LONG_NOTLONG = 2;
}
enum ScreenRound {
SCREEN_ROUND_UNSET = 0;
SCREEN_ROUND_ROUND = 1;
SCREEN_ROUND_NOTROUND = 2;
}
enum WideColorGamut {
WIDE_COLOR_GAMUT_UNSET = 0;
WIDE_COLOR_GAMUT_WIDECG = 1;
WIDE_COLOR_GAMUT_NOWIDECG = 2;
}
enum Hdr {
HDR_UNSET = 0;
HDR_HIGHDR = 1;
HDR_LOWDR = 2;
}
enum Orientation {
ORIENTATION_UNSET = 0;
ORIENTATION_PORT = 1;
ORIENTATION_LAND = 2;
ORIENTATION_SQUARE = 3;
}
enum UiModeType {
UI_MODE_TYPE_UNSET = 0;
UI_MODE_TYPE_NORMAL = 1;
UI_MODE_TYPE_DESK = 2;
UI_MODE_TYPE_CAR = 3;
UI_MODE_TYPE_TELEVISION = 4;
UI_MODE_TYPE_APPLIANCE = 5;
UI_MODE_TYPE_WATCH = 6;
UI_MODE_TYPE_VR_HEADSET = 7;
}
enum UiModeNight {
UI_MODE_NIGHT_UNSET = 0;
UI_MODE_NIGHT_NIGHT = 1;
UI_MODE_NIGHT_NOTNIGHT = 2;
}
enum Touchscreen {
TOUCHSCREEN_UNSET = 0;
TOUCHSCREEN_NOTOUCH = 1;
TOUCHSCREEN_STYLUS = 2;
TOUCHSCREEN_FINGER = 3;
}
enum KeysHidden {
KEYS_HIDDEN_UNSET = 0;
KEYS_HIDDEN_KEYSEXPOSED = 1;
KEYS_HIDDEN_KEYSHIDDEN = 2;
KEYS_HIDDEN_KEYSSOFT = 3;
}
enum Keyboard {
KEYBOARD_UNSET = 0;
KEYBOARD_NOKEYS = 1;
KEYBOARD_QWERTY = 2;
KEYBOARD_12KEY = 3;
}
enum NavHidden {
NAV_HIDDEN_UNSET = 0;
NAV_HIDDEN_NAVEXPOSED = 1;
NAV_HIDDEN_NAVHIDDEN = 2;
}
enum Navigation {
NAVIGATION_UNSET = 0;
NAVIGATION_NONAV = 1;
NAVIGATION_DPAD = 2;
NAVIGATION_TRACKBALL = 3;
NAVIGATION_WHEEL = 4;
}
enum GrammaticalGender {
GRAMMATICAL_GENDER_UNSET = 0;
GRAMMATICAL_GENDER_NEUTER = 1;
GRAMMATICAL_GENDER_FEMININE = 2;
GRAMMATICAL_GENDER_MASCULINE = 3;
}
// Mobile country code.
uint32 mcc = 1;
// Mobile network code.
uint32 mnc = 2;
// Locale.
string locale = 3;
// Layout direction.
LayoutDirection layout_direction = 4;
// Screen width in dp.
uint32 screen_width = 5;
// Screen height in dp.
uint32 screen_height = 6;
// Smallest screen width in dp.
uint32 smallest_screen_width = 7;
// Screen layout size.
ScreenLayoutSize screen_layout_size = 8;
// Screen layout long.
ScreenLayoutLong screen_layout_long = 9;
// Screen round.
ScreenRound screen_round = 10;
// Wide color gamut.
WideColorGamut wide_color_gamut = 11;
// HDR.
Hdr hdr = 12;
// Orientation.
Orientation orientation = 13;
// UI mode type.
UiModeType ui_mode_type = 14;
// UI mode night.
UiModeNight ui_mode_night = 15;
// Density in dpi.
uint32 density = 16;
// Touchscreen.
Touchscreen touchscreen = 17;
// Keys hidden.
KeysHidden keys_hidden = 18;
// Keyboard.
Keyboard keyboard = 19;
// Nav hidden.
NavHidden nav_hidden = 20;
// Navigation.
Navigation navigation = 21;
// SDK version.
uint32 sdk_version = 22;
// Product.
string product = 23;
// Grammatical gender.
GrammaticalGender grammatical_gender = 24;
}

569
proto/Resources.proto Normal file
View File

@@ -0,0 +1,569 @@
syntax = "proto3";
package aapt.pb;
option java_package = "com.android.aapt";
import "Configuration.proto";
// A string pool that wraps the binary form of the C++ class android::ResStringPool.
message StringPool {
bytes data = 1;
}
// The position of a declared entity in a file.
message SourcePosition {
uint32 line_number = 1;
uint32 column_number = 2;
}
// Developer friendly source file information for an entity in the resource table.
message Source {
// The index of the string path within the source StringPool.
uint32 path_idx = 1;
SourcePosition position = 2;
}
// Top level message representing a resource table.
message ResourceTable {
// The string pool containing source paths referenced by Source messages.
StringPool source_pool = 1;
// The packages declared in this resource table.
repeated Package package = 2;
// The overlayable declarations in this resource table.
repeated Overlayable overlayable = 3;
// The tool fingerprints of the tools that built this resource table.
repeated ToolFingerprint tool_fingerprint = 4;
}
// A package declaration.
message Package {
// The package ID of this package.
// This is the first byte of a resource ID (0xPPTTEEEE).
// This is optional, and if not set, the package ID is assigned by the runtime.
// For the framework, this is 0x01. For the application, this is 0x7f.
uint32 package_id = 1;
// The Java compatible package name.
string package_name = 2;
// The types declared in this package.
repeated Type type = 3;
}
// A set of resources grouped under a common type (string, layout, xml, etc).
// This maps to the second byte of a resource ID (0xPPTTEEEE).
message Type {
// The type ID of this type.
// This is optional, and if not set, the type ID is assigned by the runtime.
uint32 type_id = 1;
// The name of this type.
string name = 2;
// The entries declared in this type.
repeated Entry entry = 3;
}
// A resource entry declaration.
// This maps to the last two bytes of a resource ID (0xPPTTEEEE).
message Entry {
// The entry ID of this entry.
// This is optional, and if not set, the entry ID is assigned by the runtime.
uint32 entry_id = 1;
// The name of this entry.
string name = 2;
// The visibility of this entry.
Visibility visibility = 3;
// The allow-new state of this entry.
AllowNew allow_new = 4;
// The overlayable state of this entry.
OverlayableItem overlayable_item = 5;
// The set of values defined for this entry, each with a different configuration.
repeated ConfigValue config_value = 6;
}
// The visibility of a resource entry.
message Visibility {
enum Level {
UNKNOWN = 0;
PRIVATE = 1;
PUBLIC = 2;
}
// The visibility level.
Level level = 1;
// The source of the visibility declaration.
Source source = 2;
// The comment associated with the visibility declaration.
string comment = 3;
}
// The allow-new state of a resource entry.
message AllowNew {
// The source of the allow-new declaration.
Source source = 1;
// The comment associated with the allow-new declaration.
string comment = 2;
}
// The overlayable state of a resource entry.
message OverlayableItem {
enum Policy {
NONE = 0;
PUBLIC = 1;
SYSTEM = 2;
VENDOR = 3;
PRODUCT = 4;
SIGNATURE = 5;
ODM = 6;
OEM = 7;
ACTOR = 8;
CONFIG_SIGNATURE = 9;
}
// The source of the overlayable declaration.
Source source = 1;
// The comment associated with the overlayable declaration.
string comment = 2;
// The policy of the overlayable declaration.
repeated Policy policy = 3;
// The index of the overlayable declaration in the overlayable list.
uint32 overlayable_idx = 4;
}
// A value defined for a resource entry with a specific configuration.
message ConfigValue {
// The configuration for which this value is defined.
Configuration config = 1;
// The value of the resource.
Value value = 2;
}
// A generic value of a resource.
message Value {
// The source of the value declaration.
Source source = 1;
// The comment associated with the value declaration.
string comment = 2;
// The value is a weak reference to another resource.
bool weak = 3;
// The value is a raw string.
Item item = 4;
// The value is a compound value.
CompoundValue compound_value = 5;
}
// A value that is a single item.
message Item {
// The value is a reference to another resource.
Reference ref = 1;
// The value is a string.
String str = 2;
// The value is a raw string.
RawString raw_str = 3;
// The value is a styled string.
StyledString styled_str = 4;
// The value is a file.
File file = 5;
// The value is an integer.
Id id = 6;
// The value is a primitive.
Primitive prim = 7;
}
// A value that is a compound value.
message CompoundValue {
// The value is an attribute.
Attribute attr = 1;
// The value is a style.
Style style = 2;
// The value is a styleable.
Styleable styleable = 3;
// The value is an array.
Array array = 4;
// The value is a plural.
Plural plural = 5;
// The value is a macro.
MacroBody macro = 6;
}
// A reference to another resource.
message Reference {
enum Type {
REFERENCE = 0;
ATTRIBUTE = 1;
}
// The type of reference.
Type type = 1;
// The resource ID being referenced.
uint32 id = 2;
// The name of the resource being referenced.
string name = 3;
// The private state of the reference.
bool private = 4;
// The dynamic reference state of the reference.
bool is_dynamic = 5;
}
// A string value.
message String {
// The string value.
string value = 1;
}
// A raw string value.
message RawString {
// The raw string value.
string value = 1;
}
// A styled string value.
message StyledString {
// The raw string value.
string value = 1;
// The spans of the styled string.
repeated Span span = 2;
}
// A span of a styled string.
message Span {
// The tag of the span.
string tag = 1;
// The first character index of the span.
uint32 first_char = 2;
// The last character index of the span.
uint32 last_char = 3;
}
// A file value.
message File {
// The path to the file.
string path = 1;
}
// An ID value.
message Id {
}
// A primitive value.
message Primitive {
// The null value.
message NullType {}
// The empty value.
message EmptyType {}
oneof oneof_value {
NullType null_value = 1;
EmptyType empty_value = 2;
float float_value = 3;
uint32 dimension_value = 4;
uint32 fraction_value = 5;
int32 int_decimal_value = 6;
uint32 int_hexadecimal_value = 7;
bool boolean_value = 8;
uint32 color_argb8_value = 9;
uint32 color_rgb8_value = 10;
uint32 color_argb4_value = 11;
uint32 color_rgb4_value = 12;
}
}
// An attribute value.
message Attribute {
enum FormatFlags {
NONE = 0x0;
REFERENCE = 0x1;
STRING = 0x2;
INTEGER = 0x4;
BOOLEAN = 0x8;
COLOR = 0x10;
FLOAT = 0x20;
DIMENSION = 0x40;
FRACTION = 0x80;
ENUM = 0x10000;
FLAGS = 0x20000;
}
// The format flags of the attribute.
uint32 format_flags = 1;
// The minimum value of the attribute.
int32 min_int = 2;
// The maximum value of the attribute.
int32 max_int = 3;
// The symbols of the attribute.
repeated Symbol symbol = 4;
}
// A symbol of an attribute.
message Symbol {
// The source of the symbol declaration.
Source source = 1;
// The comment associated with the symbol declaration.
string comment = 2;
// The name of the symbol.
Reference name = 3;
// The value of the symbol.
uint32 value = 4;
// The type of the symbol.
uint32 type = 5;
}
// A style value.
message Style {
// The parent of the style.
Reference parent = 1;
// The source of the parent declaration.
Source parent_source = 2;
// The entries of the style.
repeated Entry entry = 3;
// An entry of a style.
message Entry {
// The source of the entry declaration.
Source source = 1;
// The comment associated with the entry declaration.
string comment = 2;
// The key of the entry.
Reference key = 3;
// The item of the entry.
Item item = 4;
}
}
// A styleable value.
message Styleable {
// The entries of the styleable.
repeated Entry entry = 1;
// An entry of a styleable.
message Entry {
// The source of the entry declaration.
Source source = 1;
// The comment associated with the entry declaration.
string comment = 2;
// The attribute of the entry.
Reference attr = 3;
}
}
// An array value.
message Array {
// The elements of the array.
repeated Element element = 1;
// An element of an array.
message Element {
// The source of the element declaration.
Source source = 1;
// The comment associated with the element declaration.
string comment = 2;
// The item of the element.
Item item = 3;
}
}
// A plural value.
message Plural {
enum Arity {
ZERO = 0;
ONE = 1;
TWO = 2;
FEW = 3;
MANY = 4;
OTHER = 5;
}
// The entries of the plural.
repeated Entry entry = 1;
// An entry of a plural.
message Entry {
// The source of the entry declaration.
Source source = 1;
// The comment associated with the entry declaration.
string comment = 2;
// The arity of the entry.
Arity arity = 3;
// The item of the entry.
Item item = 4;
}
}
// A macro body value.
message MacroBody {
// The raw string value.
string raw_string = 1;
// The style string value.
StyleString style_string = 2;
// The untranslatable sections of the macro.
repeated UntranslatableSection untranslatable_section = 3;
// The namespace declarations of the macro.
repeated NamespaceDeclaration namespace_declaration = 4;
}
message StyleString {
string str = 1;
repeated Span spans = 2;
}
message UntranslatableSection {
uint64 start_index = 1;
uint64 end_index = 2;
}
message NamespaceDeclaration {
string prefix = 1;
string uri = 2;
Source source = 3;
}
// An overlayable declaration.
message Overlayable {
// The name of the overlayable.
string name = 1;
// The source of the overlayable declaration.
Source source = 2;
// The actor of the overlayable declaration.
string actor = 3;
}
// A tool fingerprint.
message ToolFingerprint {
// The tool name.
string tool = 1;
// The version of the tool.
string version = 2;
}
// A dynamic reference table.
message DynamicRefTable {
// The package ID to package name mapping.
repeated PackageId packageName = 1;
}
message PackageId {
uint32 id = 1;
string name = 2;
}
// A generic XML node.
message XmlNode {
// The element node.
XmlElement element = 1;
// The text node.
string text = 2;
// The source of the node.
SourcePosition source = 3;
}
message XmlNamespace {
string prefix = 1;
string uri = 2;
SourcePosition source = 3;
}
// An XML element.
message XmlElement {
// The namespace declarations of the element.
repeated XmlNamespace namespace_declaration = 1;
// The namespace URI of the element.
string namespace_uri = 2;
// The name of the element.
string name = 3;
// The attributes of the element.
repeated XmlAttribute attribute = 4;
// The children of the element.
repeated XmlNode child = 5;
}
// An XML attribute.
message XmlAttribute {
// The namespace URI of the attribute.
string namespace_uri = 1;
// The name of the attribute.
string name = 2;
// The value of the attribute.
string value = 3;
// The source of the attribute.
SourcePosition source = 4;
// The resource ID of the attribute.
uint32 resource_id = 5;
// The compiled item of the attribute.
Item compiled_item = 6;
}