问题标签 [aapt2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - android或flutter应用程序中的AndroidManifest错误
每当我运行 flutter run -vi 时,aapt dump xmltree 都会出错。所以现在我单独运行 aapt dump 命令,所以我在无法打开的 AndroidManifest.xml 中得到错误。
库曼德
输出
android - com.android.builder.internal.aapt.v2.Aapt2Exception:Android 资源链接失败:错误:链接引用失败
我遇到了来自 aapt2 的以下错误:
我的环境如下:
- 安卓工作室 3.4.1
- Gradle 插件:3.4.1
- 苹果系统
build.gradle
如下:
错误如下:
关于如何解决这个问题的任何想法?
android - 如何强制为 Android 库 (AAR) 生成 R.java
我正在构建一个使用 R 类生成一些额外代码的注释处理器。这适用于 Android 应用程序
但是,对于 Android 库 (AAR),不再生成 R.java 类。AFAIK,android 库插件生成一个 R.txt 文件,然后依赖于该库的 Android 应用程序将该 R.txt 信息编译到最终的 R.java 类中。
我的问题是,有没有一种方法可以强制 AAPT 为 AAR 创建 R.java 类,以便我的注释处理器可以运行?
android-studio - 更新到 Android Studio 3.5(和 Gradle 3.5.0)后 AAPT2 Gradle 构建错误
已将 Studio 更新到 3.5(从 3.1)。Gradle 升级到 3.5.0(之前是项目中的 3.1.2)。
构建时出现错误:“不支持的操作系统。” (在更新项目建设之前没有错误)
系统是“Linux Mint 4.4.0-112-generic #135~14.04.1-Ubuntu SMP Tue Jan 23 20:41:48 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux”
我试过:重新下载SDK,重启系统,安装库 .....同样的错误
UPD:通过降级 Gradle 修复,但无论如何有新版本的解决方案吗?
aapt2 - aapt2 链接失败:找不到 compileSdkVersion
尝试使用 aapt2 而不是 aapt。编译似乎没问题,但我遇到了一个问题:
这是清单,您可以看到明确定义的属性 android:compileSdkVersion:
怎么会这样?
编辑:在 AndroidManifest.xml 上使用了 xmllint。没运气。然后我刚刚从清单中删除了 android:compileSdkVersion 。它链接成功。我很困惑。
android - aapt2 的 res-auto 和 lib-auto 有什么区别,官方文档在哪里?
-- 编辑 --
我知道 xmlns 是什么谢谢:)
-- 结束编辑 --
我找不到关于 res-auto 和 lib-auto android 命名空间的任何文档。这些出现在 xml 布局文件的顶部:
我注意到 aapt2 需要使用 lib-auto 而不是 res-auto。但不知道为什么。
xmlns:app="http://schemas.android.com/apk/lib-auto"
如果您没有任何 xml 布局文件,并且您仍然需要包含库中的所有资源,该怎么办。lib-auto 的“代码”版本是什么?
java - 更新到 Androidx,我无法在发布中生成 APK:AAPT2 进程意外退出
Gradle 版本:5.6.2。
安卓插件版本:3.5.0。
编译 SDK 版本:28。
构建工具版本:28.0.3。
SDK 工具版本:
我有一个带有 Android 插件版本 3.2.1 和 Gradle 版本 4.6 的功能版本应用程序,但要应用新功能,我们必须迁移到 androidx。
执行迁移并更新依赖项后,一切正常,我们在模拟器上运行并在调试版本上测试手机。
在我们尝试生成发布 APK/捆绑包时,由于 AAPT2 链接中的错误而失败。(AAPT2 aapt2-3.5.0-5435860-windows Daemon #0: Unexpected error during link,试图停止守护进程。这在正常情况下不应该发生,如果发生,请提出问题。)
APK 在禁用 minifyEnabled 选项时生成。
但是,我们不能在没有缩小的情况下分发 APK。
我们已经尝试了以下方法:
1 - 按照建议(在与 Android Gradle 插件 3.3.0 合并资源期间构建失败)执行 Android Gradle 插件 3.4.0 和 Gradle 版本 5.4.1 的降级,但错误仍然存在
2 - 我使用 AAPT2 页面 ( https://developer.android.com/studio/command-line/aapt2#compile )上的命令执行 AAPT2 命令来编译我的应用程序 res 文件夹中的媒体,以检查是否编译应用程序的资源时出现问题,但编译成功。
3 - 在 aaptOptions 中使用选项 cruncherEnabled = false 和 useNewCruncher = false
4 - 在 gradle.properties 中使用 android.enableAapt2 = false 选项,但它已被弃用
5 - 在我的 gradle 控制台中运行 assembleDebug 和 assembleRelease
项目构建.gradle
应用程序构建.gradle
gradle.properties
堆栈跟踪
android - org.gradle.api.GradleException:无法在 Android Studio 3.5.2 上读取路径和 java.nio.FileAccessDeniedException
请仔细阅读。这不是重复的。我花了无数个小时在互联网上寻找解决这个问题的方法。它从 android studio 3.3 开始。所以我将android studio更新到最新版本3.5.2,我将gradle更新到5.4.1版本和android gradle plugin到3.5.2,错误仍然存在。
当我单击同步项目时,它同步成功,但是当我想运行应用程序时,它会引发异常:任务':app:mergeDebugResources'的执行失败我使用--debug选项运行它,并使用--stacktrace来获取更多见解。
这是堆栈跟踪:
org.gradle.api.tasks.TaskExecutionException:任务':app:mergeDebugResources'的执行失败。在 org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.accept(ExecuteActionsTaskExecuter.java:151) 在 org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$3.accept(ExecuteActionsTaskExecuter.java:148) 在 org .gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:191) 在 org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:141) 在 org.gradle.api.internal.tasks .execution.ResolveBeforeExecutionStateTaskExecuter.execute(ResolveBeforeExecutionStateTaskExecuter.java:75) 在 org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:62) 在 org.gradle.api.internal.tasks.execution。
引起:java.nio.file.AccessDeniedException: C:\Users\Freeborn.gradle\caches\transforms-2\files-2.1\5bfb0b3279bf9321cb7d837f84317b2f\aapt2-3.5.2-5435860-windows ... 56 更多
从上面看,在最后一部分,有一个 java.nio.file.AccessDeniedException C;\users\freeborn.gradle\caches
我认为这可能是问题所在。我在资源管理器上打开文件夹,文件夹显示拒绝访问。我试过删除文件夹,还是不行。我重新启动了计算机,问题仍然存在。我无法删除文件夹,我无法更改文件夹的权限设置,它说我无权更改文件夹的权限设置,因此我无法声明所有权。
看来我是唯一有这个问题的人。
这是主要问题:
无法解析配置“:app:_internal_aapt2_binary”的所有文件。
无法转换工件 'aapt2-windows.jar (com.android.tools.build:aapt2:3.5.2-5435860)' 以匹配属性 {artifactType=_internal-android-aapt2-binary, org.gradle.usage=java-运行时罐子}。org.gradle.api.GradleException:无法读取路径“C:\Users\Freeborn.gradle\caches\transforms-2\files-2.1\5bfb0b3279bf9321cb7d837f84317b2f\aapt2-3.5.2-5435860-windows”。
我已经尝试了一切,现在我不知道该怎么办。如果我尝试降级 gradle 版本,它将暂时起作用,稍后问题将再次出现。
android - 将 gradle 升级到 3.5.2 后无法构建项目
我的项目在 上运行良好gradle 3.3.2
,但是当我将其升级到 时gradle 3.5.2
,项目构建失败。
这是错误:
这是我的项目build.gradle
gradle-wrapper.properties
如果还需要什么,请告诉我。谢谢你。
android - Android 在 docker 容器中构建
我尝试在 docker 容器上运行 android build。
我的 dockerfile 的内容在这里:
我创建了一个 docker 映像并运行它。我在 docker 终端上运行以下命令。
MyApplication 是 Android Studio 的默认空活动项目。
错误日志在这里:
/gradlew :app:assembledebug
任务 :app:preBuild 最新任务 :app:preDebugBuild 最新任务 :app:compileDebugAidl NO-SOURCE 任务 :app:compileDebugRenderscript 最新任务 :app:checkDebugManifest 最新任务 : app:generateDebugBuildConfig 最新任务 :app:prepareLintJar 最新任务 :app:mainApkListPersistenceDebug 最新任务 :app:generateDebugResValues 最新任务 :app:generateDebugResources 最新任务 :应用程序:合并调试资源失败
FAILURE:构建失败并出现异常。
出了什么问题:任务“:app:mergeDebugResources”执行失败。
java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2InternalException: AAPT2 aapt2-3.3.0-alpha12-5013011-linux Daemon #0: Daemon startup failed
这在正常情况下不应该发生,请如果确实如此,请提出问题。尝试:使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。
在https://help.gradle.org获得更多帮助
编辑
这个项目在我的 mac 笔记本电脑上运行良好。本地机器构建没问题,但它不适用于 docker 容器。
编辑
我运行--stacktrace
参数。未找到 aapt2
引起:java.io.IOException:无法运行程序“/root/.gradle/caches/transforms-1/files-1.1/aapt2-3.2.0-4818971-linux.jar/6f8af69a2b8f839763b018ee3b5c1d41/aapt2-3.2.0-4818971 -linux/aapt2": error=2, com.android.builder.internal.aapt.v2 的 com.android.builder.internal.aapt.v2.Aapt2DaemonImpl.startProcess(Aapt2DaemonImpl.kt:80) 没有这样的文件或目录.Aapt2Daemon.checkStarted(Aapt2Daemon.kt:53) ... 8 更多原因:java.io.IOException: error=2, No such file or directory ... 10 更多