Articles of aapt

如何使用aapt2,文档在哪里?

我使用aapt p打包资源并生成R.java 。 但是当我升级到Android 24时,我find了aapt2.exe 。 我应该使用aapt2.exe吗? 我该如何使用它? 我找不到任何关于它的文档。

自动解决Android构建错误:帧像素必须是实心或透明(不是中间alpha)。 – 在顶部边缘的像素#4处find

Android Studio(使用SDK 19,21或22)显示Eclipse ADT(使用SDK 19)没有的错误: 错误:9-patch image D:\ Workspaces …. \ res \ drawable-hdpi \ btn_bg_common_press.9.png格式错误。 错误:帧像素必须是实心或透明(不是中间alpha)。 – 在顶部边缘的像素#4处find。 或者另一个错误 : 错误:透明框中的刻度必须为黑色或红色。 两者都在 错误:错误:com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:处理’命令’E:\ Android \ sdk-Android-Studio \ build-tools \ 19.1.0 \ aapt .exe”以非零退出值42结束 文件示例在上面,但有20多个这样的文件运行良好。 如何让Android Studio或Gradle跳过此错误而不会失败,而无需逐个修改这些文件? 如果使用Gradle无法实现,我可以用什么命令行工具替换所有透明像素? 应用程序模块(资源所在的)的build.gradle文件如下所示。 我已经尝试过使用SDK 19和SDK 21以及构建工具19.1,21.1.2,22 。 AOSP上的类似问题, 问题159464:Android studio:mergeDebugResources导入Eclipse项目时失败 。 buildscript { repositories { jcenter() } dependencies { […]

在NetBeans中构建新的Android应用程序时找不到aapt

我按照此处的说明安装了NetBeans和Android SDK。 我正在运行Ubuntu 9.10(Karmic)。 NetBeans是6.7.1。 Android SDK是版本7。 当我尝试编译一个新项目时,它给了我以下错误: Execute failed: java.io.IOException: Cannot run program “/home/oz/android-sdk/platforms/android-7/tools/aapt” (in directory “/home/oz/projects/ArmyBuilder/android”): java.io.IOException: error=2, No such file or directory 当我进入该目录时,我看到该文件确实存在,并且它具有可由任何人执行的适当权限,但即使bash也找不到它! oz@Ivory-Coast:~/android-sdk/platforms/android-7/tools$ pwd /home/oz/android-sdk/platforms/android-7/tools oz@Ivory-Coast:~/android-sdk/platforms/android-7/tools$ ls -l total 4652 -rwxrwxrwx 1 oz oz 3472784 2010-04-20 18:16 aapt -rwxrwxrwx 1 oz oz 1050336 2010-04-20 18:16 aidl -rwxrwxrwx 1 oz oz 213698 […]

Android打包问题:resources.ap_不存在

我试图在Eclipse中解决问题3个小时,但我没有取得任何进展。 明天是客户来看我的应用程序,我没有时间离开。 这真是令人沮丧! 今天早上,当我编写代码时,我想在我的设备上运行我的应用程序,Eclipse突然崩溃了。 ‘aapt.exe已停止工作’ 此后Eclipse不再启动了。 它在飞溅的图像上冻结了。 我查看了互联网并尝试了不同的解决方案,例如回到Java SE 6更新20,更改.ini文件等,最后重新安装Eclipse完成了这项工作。 不久之后’aapt.exe已停止工作’返回。 我通过改变我的项目目标find了解决方案。 1.5,1.6,2.2没关系,只要它与之前的那个不同。 现在我得到Error generating final archive: java.io.FileNotFoundException: C:\xxx\bin\resources.ap_ does not exist错误。 我试过干净,但这不起作用。 删除并自动重新生成R.java也不起作用。 我使用Android插件在Netbeans中运行相同的代码,在那里它让’aapt.exe再次停止工作’:( 请伙计们,我该如何解决这个问题? 编辑: 我想我可能find了原因。 这些是控制台中的错误行: org.xmlpull.v1.XmlPullParserException: Binary XML file line #3: requires a valid src attribute at android.graphics.drawable.BitmapDrawable.inflate(BitmapDrawable.java:341) at android.graphics.drawable.Drawable.createFromXmlInner(Drawable.java:779) at android.graphics.drawable.Drawable.createFromXml(Drawable.java:720) at com.android.layoutlib.bridge.ResourceHelper.getDrawable(ResourceHelper.java:150) at com.android.layoutlib.bridge.BridgeTypedArray.getDrawable(BridgeTypedArray.java:668) at android.view.View.(View.java:1846) at android.view.View.(View.java:1795) at […]

ADT 22 – 升级后缺少aapt.exe

在工作中,我需要使用maven与Android。 maven使用appt.exe进行自己的编译过程。 自从我升级到ADT 22后,maven说它无法find这个文件,而且它是正确的 – 文件已经从“… \ platform-tools”消失了。 我试图卸载并重新安装sdk管理器和ADT,但它没有帮助。 我该怎么做才能解决这个问题? 为什么会消失? 编辑: 现在,我使用了一种解决方法,即将所有旧的“平台工具”文件复制(不替换)到当前文件中。 它似乎工作,但也许它可能会导致问题。

在将APK上传到Play商店时获取“’android:icon’属性:属性不是字符串值”错误

背景 经过这么多小时的空闲时间,我准备将我的第一个应用程序发布到游戏商店,但遗憾的是我在上传已签名的应用程序时遇到了困难。 我已经使用我创建的密钥库(所有这些都通过Eclipse和ADT)成功导出了应用程序,因此我将已签名的APK上传到Play商店( 此处 )。 问题 我一直收到这条消息: 上传失败您的APK无法使用’aapt dump Badging’进行分析。 错误输出:无法运行aapt转储标记:W / ResourceType(14856):获取资源号0x01080049时没有已知包错误获取’android:icon’属性:属性不是字符串值 因此: 应用程序本身在真实设备上运行良好,正在使用的图像文件是android-assets-studio网站使用的普通PNG文件。 我试过的 我在这里搜索了StackOverflow,发现了很多关于它的post( 这里 )。 我已经读了很多,并尝试了下一步,但没有任何帮助: 将应用程序图标放在不同的文件夹(“drawable”,“drawable-mdpi”,…甚至“drawable-xxxhdpi”)中,具有多种组合(从每个文件夹中放入/删除)。 在“应用程序”标签和启动器活动标签上设置标签,图标和主题。 更改图像文件名和文件本身(将其替换为默认的应用程序图标)。 清理项目。 检查Lint消息。 更新ADT(至22.3.0.v201310242005-887826),Eclipse(至Kepler Service Release 1),SDK工具(至22.3),SDK构建工具(至19.0.1)。 一切都是最新的官方版本。 检查是否没有使用双jar文件(多个库上没有jar文件,特别是如果它有不同的版本)。 尝试将strings.xml放入“res / values-en”而不是“res / values” 尝试将“android:value”属性添加到清单上的所有元数据标记(由Google建议)。 它没用。 事实上,在我读过的所有教程中,我从来没有从AppWidget看到过这样的要求,所以我认为不需要它。 尝试了aapt命令: aapt dump badging 这向我展示了游戏商店显示的相同内容(我已经用XXX替换了真正的包名和应用名称): application: label=’XXX XXX’ icon=’res/drawable-mdpi/app_icon.png’ launchable-activity: name=’XXX.XXX.XXXActivity’ label=’XXX XXX’ icon=’res/drawable-mdpi/app_icon.png’ W/ResourceType( 9132): […]

错误:无法运行aapt

当我编译一个Android应用程序时(我尝试使用sdk中的示例应用程序)。 我收到此错误: >Error executing aapt: Cannot run program “/home/roel/projects/sdk/build-tools/18.0.1/aapt”: >error=2, No such file or directory: error=2, No such file or directory KeyChainDemo >line 1 Android ADT Problem 但是aapt是在那个地方吗? >[roel@archUSB 18.0.1]$ ls /home/roel/projects/sdk/build-tools/18.0.1/ >NOTICE.txt aidl dx libLLVM.so libbcinfo.so llvm-rs-cc source.properties >**aapt** dexdump lib libbcc.so libclang.so renderscript 注意:我也得到错误“R无法解决”,但我很确定当我解决问题1时,我也解决了这个问题

从android框架覆盖布局xml

问题 我想覆盖android命名空间中的布局文件,例如R.layout.popup_menu_item_layout ( 从代码引用为com.android.internal.R.layout.popup_menu_item_layout )。 通过说覆盖 ,我假设在项目中声明一个xml文件,该文件将优先于框架拥有的布局。 注意,这只是一个示例布局,因此问题涉及sdk/platforms/android-XX/data/res/layout目录中的每个布局。 我试过的 工具:覆盖 有一个未记录的 tools:override标记可用,它覆盖特定的资源。 请参阅此答案以获取示例,该示例将覆盖设计支持库中的值, 而不是来自Android框架的值。 应用tools:override=”true”到布局的根标签不会生效。 XML布局参考 – refs.xml 如本文所述,在/values/目录中声明一个refs.xml文件,其中包含以下内容: @layout/activity_second 一旦使用了activity_second.xml它将引用activity_second.xml 。 有一个答案建议使用这种技术来取代Snackbar的布局。 这也不会生效。 题 有没有合法的方法来覆盖/替换android包中的布局文件?

Android Studio 3.0清单错误:find未知元素

注意:请不要将此“android.enableAapt2 = false”作为答案发布。 这不是一个解决方案。 它只是忽略了在运行时没有引起任何问题的真正错误。 解决方案很简单,只是在清单文件中的intentfilter之外删除了错误放置的操作标记 。 有一个由Android Studio 2.3构建的应用程序很好。 更新Android Studio 3.0 Stable后 ,开始出现此错误并无法构建我的项目。 这是我的manifest.xml 错误显示此行: 如果我评论/删除此操作标记行,项目构建正常但GCM是必要的,我无法删除它。 当你看到日志时,主清单文件中没有出现错误,发生在/ build / intermediates / manifests / full / debug /AndroidManifest.xml 尝试清洁,重建,禁用即时运行。 有什么解决方案吗? 错误日志: /THE_PROJECT_PATH/app/build/intermediates/manifests/full/debug/AndroidManifest.xml Error:(99) error: unknown element found. Error:(99) unknown element found. Error:java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: […]

org.gradle.api.tasks.TaskExecutionException:仅在Jenkins上执行任务':mergeDevOnlySlDebugResources'的执行失败

当我使用Android Studio 3.0 Beta 7并使用Android Gradle 3.0.0-beta7插件更新我的项目时,我的项目在debugging和rc(启用proguard)变体中均可以正常工作。 当我试图build立我的jenkins盒子时,我得到了一堆: C:\Windows\System32\config\systemprofile\.gradle\caches\transforms-1\files-1.1\androidsdk-2.4.12-fullRelease.aar\222313e24d6c4b00972b4191a95e6e2e\res\drawable-xxhdpi-v4\ic_teads_sdk_contact_us.png: error: file not found. C:\Windows\System32\config\systemprofile\.gradle\caches\transforms-1\files-1.1\appcompat-v7-25.3.1.aar\c8fedf0a28e83c9ac57e1ac18693c6a0\res\drawable-hdpi-v4\abc_tab_indicator_mtrl_alpha.9.png: error: file not found. C:\Windows\System32\config\systemprofile\.gradle\caches\transforms-1\files-1.1\android-sdk-ui-2.0.4.aar\0b51ce1d665e491601444168a26000ca\res\drawable-xhdpi-v4\com_appboy_inappmessage_chevron.png: error: file not found. 什么地方出了错: Execution failed for task ':mergeDevOnlySlDebugResources'. Error: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details 我试图使用AAPT而不是AAPT2,这仍然给我同样的问题。 我的其他jenkins项目没有运行这个gradle 3更改仍然运行良好。 此外,从上面找不到的文件确实在我的机器上的AAPT无法find的位置。 有没有人遇到过这个? 我已经看到错误的在线关于无效的PNG或使用新的AAPT2的实际错误,但这是不同的。