- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
aapt的输出格式是什么?
例如检查这里的输出 http://elinux.org/Android_aapt
config 0 lang=-- cnt=-- orien=0 touch=0 density=def key=0 infl=0 nav=0 w=0 h=0 sz=0 lng=0
resource 0x7f040000 com.android.spare_parts:xml/spare_parts: t=0x03 d=0x00000003 (s=0x0008 r=0x00)
每个字段是什么意思?有没有文档什么的?
最佳答案
这个答案解决了您示例的第二行,aapt dump 对 resources.arsc
中定义的值的表示。
在您的示例中,包 com.android.spare_parts 中 ID 为 0x7f04000 的资源是一个名为 spare_parts 的字符串,其值定义在字符串表中的索引 3 处。
该行的格式如下:
resource <resource ID> <package>:<type>/<name> t=<dataType> d=<data> (s=<size> r=<res0>)
资源 ID
是 well known您在 R.java 中找到的 ID。
package
只是定义此资源的包,包中的所有资源都相同。
type
资源类型,资源表中其他地方定义的多个字符串之一
name
资源的名称
data
为资源值,根据dataType解释(见下文)
size
是值结构(不是值)的大小。似乎总是 0x0008。
res0
是 always 0x00。
dataType
是定义的常量之一 here :
// Contains no data.
TYPE_NULL = 0x00,
// The 'data' holds a ResTable_ref, a reference to another resource
// table entry.
TYPE_REFERENCE = 0x01,
// The 'data' holds an attribute resource identifier.
TYPE_ATTRIBUTE = 0x02,
// The 'data' holds an index into the containing resource table's
// global value string pool.
TYPE_STRING = 0x03,
// The 'data' holds a single-precision floating point number.
TYPE_FLOAT = 0x04,
// The 'data' holds a complex number encoding a dimension value,
// such as "100in".
TYPE_DIMENSION = 0x05,
// The 'data' holds a complex number encoding a fraction of a
// container.
TYPE_FRACTION = 0x06,
// Beginning of integer flavors...
TYPE_FIRST_INT = 0x10,
// The 'data' is a raw integer value of the form n..n.
TYPE_INT_DEC = 0x10,
// The 'data' is a raw integer value of the form 0xn..n.
TYPE_INT_HEX = 0x11,
// The 'data' is either 0 or 1, for input "false" or "true" respectively.
TYPE_INT_BOOLEAN = 0x12,
// Beginning of color integer flavors...
TYPE_FIRST_COLOR_INT = 0x1c,
// The 'data' is a raw integer value of the form #aarrggbb.
TYPE_INT_COLOR_ARGB8 = 0x1c,
// The 'data' is a raw integer value of the form #rrggbb.
TYPE_INT_COLOR_RGB8 = 0x1d,
// The 'data' is a raw integer value of the form #argb.
TYPE_INT_COLOR_ARGB4 = 0x1e,
// The 'data' is a raw integer value of the form #rgb.
TYPE_INT_COLOR_RGB4 = 0x1f,
// ...end of integer flavors.
TYPE_LAST_COLOR_INT = 0x1f,
// ...end of integer flavors.
TYPE_LAST_INT = 0x1f
关于Android aapt 输出格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18336693/
调试了3天还是没解决。如果你们中有人知道问题的根源以及我如何解决它,那我会很高兴?请原谅我不知道有更好的方法来粘贴错误消息。 错误日志: Cause 1: java.util.concurrent.E
最近,我将我的 android-SDK 升级到了 Android M(API 22,MNC 预览版)。之后,每个项目打开Eclipse都报错。 错误说:“执行 aapt 时出错。请检查 aapt 是否
我在 Visual Studio 2017 中有一个 cordova 应用程序项目,到目前为止一直在构建良好。没有对项目进行任何更改。 现在我们遇到了这个构建错误: 1>MSBUILD : cordo
每当我尝试在一些更改后第二次运行 android 项目时,我都会收到此错误。如果我关闭模拟器错误消失。但是每次都关闭模拟器不是一个可行的解决方案。我应该怎么做才能摆脱这个问题? Description
当我尝试构建和运行 Flutter 应用程序时,它向我显示以下消息: “无法找到 aapt。请确保您已安装 Android 构建工具。 异常(exception):构建 Android 应用程序时出现
我有一个奇怪的问题。在我的 bash 脚本或 Makefile 中,使用带有绝对路径的 aapt 不起作用,但如果我在本地目录中,它就起作用了。 如果我执行以下操作,它不起作用: aapt add $
aapt的输出格式是什么? 例如检查这里的输出 http://elinux.org/Android_aapt config 0 lang=-- cnt=-- orien=0 touch=0 densi
我已经尝试通过 Java 程序执行 aapt 命令已有一段时间了。我的预感是我应该使用 runtime.exec() 命令来实现这一点。但是,我查看了其他问题和答案,但似乎没有一个对我有用。命令是:
尝试使用 Maven 构建 Android 项目,我们无法使用它使用 google play services apklib 编译它。 我已经尝试从 apklib 中删除所有语言,只保留默认语言,它似
我想在带有 android sdk(文件夹/build-tools/24.0.1)的 Mac 上使用 aapt 命令。但是每当我尝试使用该命令时,我都会收到一条消息,提示找不到该命令 (aapt/aa
当我在 Windows 7 下列出正在运行的进程时,大约有 20 个 aapt.exe 进程正在显示,它们占用了大量内存。打开 android studio 时会发生这种情况。我总是被迫退出 andr
我的 Android 项目有一个 Ant 构建脚本。我正在使用 aapt 来打包各种资源文件。我想要解压缩资源文件。我试过“-0”标志,但文件仍然被压缩!但是当我通过 Eclipse 构建时,资源文件
我刚刚更新了 ADT,而不是 SDK,现在我只有一个项目存在这个问题,即我的 aapt 没有找到 Error executing aapt. Please check aapt is present
在使用eclipse进行安卓java的编程的时候,有时候我们会遇到这样的问题:那就是无故弹出aapt.exe停止工作的提示,虽然程序不会崩溃,但是这个提示经常弹出很是烦人。今天,小编就来教大家aap
我在使用 aapt 将资源打包到 apk 时遇到了一些麻烦。 .没有 @drawable/[...] 时一切正常或 @styles/[...]我的 AndroidManifest.xml 中的方向.但
我正在尝试将lib com.android.support:preference-v7:23.1.0导入到我的项目中。 但是,当我添加 compile ("com.android.support:pr
我尝试使用 android studio 构建一个 android 应用程序。当我尝试构建时,Gradle 抛出此错误: Gradle invocation completed successfull
我想以编程方式创建打包的资源文件(这就是问题),直接在 Android 手机上运行的应用程序中创建。有没有办法在手机上执行“aapt.exe”,或者有其他方法从java库创建resource._rsc
最近我一直在尝试构建一个 Android NDK 应用程序,该应用程序在过去编译和打包时没有问题。但是由于系统更新或 SDK 更新,有些东西发生了变化,现在当我尝试构建应用程序时,出现以下错误: /h
我有原始资源,偶尔会在构建之间交换或修改,但文件名不会更改,而 aapt 不会合并这些更改;它使用以前版本的 bin/MyThing.ap_(我猜这是他们被藏起来的地方)。来自 ant debug:
我是一名优秀的程序员,十分优秀!