先说报的错误:android
Error generating final archive: Found duplicate file for APK: assets/sapi_cert.cerapi
Origin 1: E:\workspace for android\FragmentTest\libs\baidumapapi_v3_2_0.jarspa
Origin 2: E:\workspace for android\FragmentTest\libs\BaiduLBS_Android.jar开发
有东西重复了,可是遇到这个问题的通常都找不到问题在哪里。编译
那么这个问题到底在哪里?百度地图
实际上是由于在下载jar开发包的时候,选择不一样的功能组合,给的jar包是不同的。百度
拿定位、检索、导航三个功能来讲,若是你只选其中一个功能,和选其中两个、或者三个全选,而后下载获得的libs下面给的开发包是不一样的。file
解决这个问题的终极办法就是,选中百度地图提供的全部功能,而后下载开发包,放到项目中去。map
在这以前你要删掉原有的全部与百度地图相关的jar和so文件。下载
这个问题在没发现以前,纠结了很长时间,闹心。
我在开始分两次从开发者平台下载了不一样的lib,后来选择所有功能下载的时候获得的文 件夹后面有个All,可是打开后发现里面给的jar和之前选不一样功能的jar有不少都不相同,All里面并无包含单独功能所须要的jar,当时也没管这 个问题,到后来编译的时候提示有问题了,而后又下载了好几回,这才知道是这样的缘由。不过话说我以为百度这样的作法应该给出一个提示,否则有时会给开发者 浪费一些没必要要的时间。
问题缘由总结一下吧,上面可能有些人看不太懂,
假如定位是功能A,导航是功能B,在下载开发包的时候,就可能有三种选择,单选A,单选B,和选择AB;
下载下来的开发包极可能是不一样的,若是没有注意的话分屡次去下载就可能会出现上面所说的问题。
固然这里只是针对百度地图的,不过Duplic file或者Duplic index什么的问题缘由都相似,你们触类旁通