最近由于有需求去做导航方面的Android开发,很是无奈,以前也的确是没有搞过,领导开大会当着所有人的面说这是给我分配的第一个工作,无论如何要做好,突然间感觉压力好大,自己已经多年没有敲过代码,而且Android方面的开发我也的确是没有做过,Java语言的基本特性我也是忘记的差不多了,总是感觉有几分赶鸭子上架,不过这也是十分无奈的事情,于是我下载了一个高德地图的Demo,为什么没有用百度的呢,其实百度的那个API介绍总感觉比较复杂了些,于是便选择使用高德的地图。

高德地图的Demo  Android版链接如下:

http://amappc.cn-hangzhou.oss-pub.aliyun-inc.com/lbs/static/zip/AMap_Android_Demo.zip

情景:打开已有项目后报错

com.android.ide.common.process.ProcessException:Failed to execute aapt

原因:在build.gradle文件中,

compileSdkVersion 和buildToolsVersion 不匹配

解决:

匹配 compileSdkVersion 和buildToolsVersion 

第一步:

通过SDK Manager工具安装最新的sdk版本,和buildToos的版本

第二步:  修改编译文件   build.gradle

可以看到错误

Error:Execution failed for task ':app:processDebugResources'.
> com.android.ide.common.process.ProcessException: Failed to execute aapt

仍然没有解决。

    compileSdkVersion
buildToolsVersion '23.0.1'

配置编译的文件中出问题的地方就是上面的两个版本号的问题。

在第一步中我们可以看到我们其实已经把SDK的版本基本都安装上了,如下图:

但是build tool的版本并不好解决,因为并没有提供安装低版本的选项。

以上是我个人的分析,并不知道是否正确。

下面给出一个自认为说的还算不错的一个资料:

https://blog.csdn.net/qq_22078107/article/details/53212883?locationNum=4&fps=1

出现这种错误原因是因为  buildToolsVersion、compileSdkVersion、targetSdkVersion、      compile 'com.android.support:appcompat-v7:xxx'不一致。

此时需要自己动手修改项目的build.gradle文件,

把下面数据修改一致即可,(小数点后的值可以不相同)

compileSdkVersion 23
buildToolsVersion "23.0.1"
targetSdkVersion 23
compile 'com.android.support:appcompat-v7:23.2.0'

(同理,如果是19,20什么的都改成一致就行)

若还报错,clean一下工程即可;

根据上面资料的方法我这里将   buildToolsVersion "23.0.1"   改为   buildToolsVersion "26.0.1"

具体如下图:

然后,编译,发现成功了,虽然有些警告。这里面的道理是怎么样的还是没有具体的搞清楚,不过将SDK和build tool 的主版本号改为一致确实可行,不过这里面还有一点是需要注意的,

那就是需要将 build tool 的主版本号改为 SDK的主版本号才可以编译成功,反之不行。准确的来说是还有错误报出来,不过还是可以运行编译成功的。

如果将  SDK 版本号改为  build tool  的版本号  则编译不成功,具体如下图:

==========================================================================

经过一些实验后有了一些小发现,于是在下面附上一些自己后来的发现:

build tool 的版本对编译成功与否影响没有想象到那么大的作用,不过尽量把 build tool的版本号调到比较高的版本还是没有问题的。

(build tool的版本号必须是本机里面安装的,这个和上面所说的主版本号与否无关,重点是你的电脑,也就是你的编译环境中必须要具有这个版本的build tool)

在 SDK 版本不变的情况下,调整build tool的版本号, 尽可能的调整build tool 版本为最新,有时候低版本的SDK 往往需要高一些版本的build tool才能编译,不过不管怎么说最新的build tool 应该是没有什么大问题的。

感觉不错的资料,推荐如下:

https://blog.csdn.net//never_cxb/article/details/50520108

https://blog.csdn.net/shakdy/article/details/54861919

http://ask.csdn.net/questions/173573

高德地图Demo运行报错 com.android.ide.common.process.ProcessException: Failed to execute aapt的更多相关文章

  1. ionic 打包 报错Execution failed for task ':processDebugResources'. > com.android.ide.common.process.ProcessException: Failed to execute aapt

    在platform --> android目录下找到build.gradle文件,打开并在def promptForReleaseKeyPassword() {...}函数前加入以下内容: 完整 ...

  2. android studio Error:Execution failed for task ':app:processDebugResources'. > com.android.ide.common.process.ProcessException: Failed to execute aapt

    情况很奇怪 我是更新版本; 问题解决: clean project; 可能是编辑器有地方存有配置数据;

  3. Android Jni开发,报com.android.ide.common.process.ProcessException: Error configuring 错误解决方案

    今天在练习JNI项目时,Android studio版本为:3.1.3,Gradle版本为4.4.由于Android studio 3.X弃用了 android.useDeprecatedNdk=tr ...

  4. Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException

    异常Log: Error:Execution failed for task ‘:app:dexDebug’. > com.android.ide.common.process.ProcessE ...

  5. java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException 的解决办法之一

    在查看别人的代码的时候,遇到了把工程导入到 Android Studio ,报:ExecutionException: com.android.ide.common.process.ProcessEx ...

  6. Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException总结

    最新项目中遇到了 Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.Proces ...

  7. com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command ' finished with non-zero exit value 1

    Error:Execution failed for task ':lenovoAlbum:processReleaseResources'. > com.android.ide.common. ...

  8. Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException

    异常Log: Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessE ...

  9. om.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException

    Error:Execution failed for task ':app:dexDebug'.> com.android.ide.common.process.ProcessException ...

随机推荐

  1. SVN错误:Failed to load JavaHL Library

    环境:jdk1.7(64bit),eclipse4.4(64bit),SVN1.10.3 问题:在利用subclipse同步资源时,报出错误提示 Failed to load JavaHL Libra ...

  2. MySQL表损坏修复【Incorrect key file for table】

    今天机房mysql服务器异常关机,重新启动后报错如下: -- :: [ERROR] /usr/local/mysql/bin/mysqld: Incorrect key file for table ...

  3. HikariPool-1 - Exception during pool initialization.

    java.sql.SQLNonTransientConnectionException: CLIENT_PLUGIN_AUTH is required 这是由于springboot自带 mysql-c ...

  4. kill me heal me的链接

    bilibili上的链接被和谐了,坑爹 韩剧网可以看,不过貌似不太清晰 http://www.hanjuwang.com/play/2015/1851.html 池城治愈营 http://www.bi ...

  5. DataStage系列教程 (Slowly Changing Dimension)缓慢变化维

    BI中维表的增量更新一般有2种: Type 1:覆盖更改.记录的列值发生变化,直接update成最新记录. Type 2:历史跟踪更改.记录值发生变化,将该记录置为失效,再insert一条新的记录. ...

  6. Ignatius and the Princess III - 拆分数-动态规划(dp)

    ---恢复内容开始--- 2017-08-10 20:00:45 writer:pprp 拆分数: 把正整数n拆分成k个正整数之和的方案数: 问题转换:将1转化为2 1.把n表示成m个正整数之和的方案 ...

  7. mac 下测试各种IE版本

    背景 作为前端开发,在谈到兼容性时不得不谈到IE浏览器,那么,如果在mac上该怎么测试各种版本的IE呢 方法 1. 下载VirtualBox虚拟器 2. 下载安装了对应版本的windows系统,htt ...

  8. 用svg实现不规则形状

    像这种弧形,用纯html和css很难写,但是用svg就简单多了. 可以用作图工具画出一个弧形,然后导成svg格式.在页面中,下面的白块就是div+svg构成 mixin svgCard(...cont ...

  9. 【Python】模块学习之利用string模块造测试数据

    背景 测试过程中需要一些随机数据,使用到了python中的string模块,记录一下 #! /usr/bin/python # coding:utf-8 """ @aut ...

  10. 1-15-2-RAID10 企业级RAID磁盘阵列的搭建(RAID1、RAID5、RAID10)

    RAID10的搭建: 有两种方法, 第一种:直接使用四块磁盘,创建级别为10的磁盘阵列 第二种:使用四块磁盘先创建两个RAID1,然后在用RAID1创建RAID0 第一步:添加五个磁盘到虚拟机 开机后 ...