一、关于百度地图开发-调试通过-打包失败(授权Key不正确)

百度地图开发调试的应用程序正常,打包后显示授权key失败

这是由于调试生成的应用程序使用的是eclipse默认的SHA1的值

我们需要使用自己创建的数字签名来解决这一问题。以下是解决方案

设置android 环境变量

如图所示 打开Cmd输入以下指令

1:cd C:\Program Files\Java\jdk1.7.0_13\bin

2:keytool -genkey -alias android.keystore -keyalg RSA -validity 20000 -keystore android.keystore

3:输入密钥口令(因为是密文,不要以为键盘没反应, 例如输入111111后直接回车) 其他信息依照提示输入。结束按Y

会生成C:\Program Files\Java\jdk1.7.0_13\bin\android.keystore文件

4:右键工程android tool-》export signed application package

输入C:\Program Files\Java\jdk1.7.0_13\bin\android.keystore和密钥

5:如下图所见产生新的SHA1,替换百度控制台的的SHA1 打包以后的百度地图开发  生成的apk不会提示授权Key失败

二、Android - 百度地图打包混淆代码后地图崩溃的解决方法

前言:

之前开发项目用到百度地图,测试的时候没有问题;但是,一打包加混淆之后就出现地图崩溃的问题;项目已经完结,趁有闲暇时间赶紧分享一下自己的解决方案。

问题现象:

之前做百度地图开发时出现一些小问题、一搜发现大家似乎都遇到过这样的问题、大家知道百度地图API需要申请Key,填写安全码。
安全码的组成规则为:Android签名证书的sha1值 “;” packagename(即:数字签名 分号 包名)
debug的话、代码没有经过混淆、百度地图正常使用、只有在打包之后才有这个问题。

但是呢、基本上发布到应用市场的apk一般都是经过加密的、有点知识产权保护意识的都会有代码混淆、
就会用一套自己的keystore,重新设定“安全码后”、导出apk时没有报任何错误
但是当我装载手机上使用百度地图定位时、地图绘制了一大半、就死掉了、留下log控制台有这么句话

?
1
com.baidu.platform.comapi.map.MapRenderer.nativeRender(Native Method)

分析原因:

这里只贴了一句、还有很多异常信息哈、经过google查找、然后把百度地图官网又仔细读了便、果然功夫不负有心人、还是让我找到了、其实官方已经明确指出了
3.6.5 为何我的程序在不混淆之前可以运行,混淆之后不能运行了?
栅格版SDK(即1.3.5及之前的版本):
如果您使用proguard进行混淆,请在您的混淆配置文件中添加如下语句:

?
1
-keep class com.baidu.mapapi.** {*;}

矢量版SDK(即2.0.0及之后的版本):
如果是用proguard ,以下配置供参考:

?
1
2
3
#-libraryjars libs/baidumapapi_v3_1_0.jar 替换成自己所用版本的jar
-keep class com.baidu.** { *; }
-keep class vi.com.gdi.bgl.android.**{*;}

其他混淆工具也请进行与此类似的配置,指定对mapapi中的类和方法不进行混淆。

解决方案
在proguard-project.txt中添加如下(引用的是百度baidumapapi_v3_1_0.jar这版的jar包、换成自己的包就好了)、

?
1
2
3
-libraryjars libs/baidumapapi_v3_3_0.jar
-keep class com.baidu.** { *; }
-keep class vi.com.gdi.bgl.android.**{*;}

其实最后找到原因就是代码混淆时少了这行、加上之后再次导出、地图功能就可以正常使用了

?
1
-keep class vi.com.gdi.bgl.android.**{*;}

Android - 百度地图打包之后出现的问题相关推荐

  1. [android] 百度地图开发 (一).申请AK显示地图及解决显示空白网格问题

        最近做android百度地图,但是使用baidumapapi_v2_3_1.jar和libBaiduMapSDK_v2_3_1.so显示百度地图时总是遇到问题--只显示网格而没有显示地图,网络 ...

  2. android 百度地图开发 别人用不了,Android百度地图开发的那些不足之处

    Android百度地图开发的那些不足之处,最近做的项目中百度地图是很重要的一个模块,其中实现了定位.自定义Marker图标.线路规划.SuggestionSearch检索.地图截图以及导航等功能.因为 ...

  3. android百度地图覆盖物异步加载图片,Android 百度地图marker中图片不显示的解决方法(推荐)...

    目的: 根据提供的多个经纬度,显示所在地的marker样式,如下: 问题: 1.发现marker中在线加载的图片无法显示出来: 2.获取多个对象后,却只显示出了一个marker: 以下为官网实现方法: ...

  4. android 百度地图 在线建议查询,Android 百度地图 SDK v3_3_0 (五) ---POI搜索和在线建议查询功能...

    目前百度地图SDK所集成的检索服务包括:POI检索.公交信息查询.线路规划.地理编码.在线建议查询.短串分享. 本篇博客将先介绍POI检索和在线建议查询(在地图地位功能基础上实现的,还不知道定位的童靴 ...

  5. android百度地图标方向,Android百度地图之方向感应和模式更改

    本文实例为大家分享了Android百度地图之方向感应和模式更改,供大家参考,具体内容如下 目标效果: 菜单中设置几种模式,点击可查看不同的地图形式,这里随便截几张图. 1.首先要去百度地图网站 htt ...

  6. android百度地图单点定位_Android百度地图实现搜索和定位及自定义图标绘制并点击时弹出泡泡...

    一.问题描述 上一次我们使用百度地图实现基本的定位功能,接下来我们继续实现搜索和定位,并使用LocationOverlay绘制定位位置,同时展示如何使用自定义图标绘制并点击时弹出泡泡 如图所示: 二. ...

  7. Android百度地图

    Android百度地图 1.先激活百度地图的账户 2.在终端获取SHA,创建应用 3.在百度地图开发平台获取AK 4.在官网下载所需配置 5.解压后放在项目的libs文件下 6.设计如下界面: 7.在 ...

  8. Android百度地图之位置定位和附近查找代码简单实现 (上)

    很长时间没有做Android相关知识了,闲暇之余再弄了弄最新的百度地图API,主要是进行百度地图附近餐馆查找功能来练练手,同时熟悉下最新的API教程.文章比较基础,也希望对你有所帮助~参考前文:   ...

  9. Android 百度地图开发(二)

    前面我们一起了解了百度地图的申请与集成Android 百度地图开发(一),今天我们接着来学习百度地图. 今天主要来了解如下问题: 1.百度地图的生命周期控制 上一篇张我们已经在布局文件里增加了mapV ...

最新文章

  1. jquery学习(3)--高级选择器
  2. Ehcache的介绍
  3. Java中Comparable和Comparator的区别
  4. [LeetCode]Perfect Squares
  5. 理解分布式一致性:Paxos协议之Generalized Paxos Byzantine Paxos
  6. siwft初学(一)
  7. 青岛计算机学校分数线,青岛计算机应用与维修专业职业学校收费标准,物联网应用技术中专学校分数线...
  8. Spring Boot返回的数据格式是XML 而不是JSON之原因探求的和解决
  9. CCF NOI1075 F函数
  10. 使用pygal.maps.world库读取JSON格式文件,显示世界人口地图图示
  11. JavaSE基础笔记一
  12. 计算机仿真 是核心吗,《计算机仿真》北大核心
  13. C++ 中cin的输入原理及字符串(string、char[])输入问题
  14. Python一周小结
  15. WebView网页打不开原因之一(及自己遇到的一些WebView问题记录)
  16. 蜗蜗的毛衣花样c++
  17. 【转】浅谈人类视觉系统与卷积神经网络(CNN)的联系和区别
  18. 德州扑克 java 算法_德州扑克算法幕后研发者:AI如何打败顶级人类牌手?
  19. STM32学习5——舵机控制
  20. matlab如何循时将上一次运行出的结果带入下一次的运算,关于怎么把 for的上一次计算结果代入下一次循环的初始值问题...

热门文章

  1. FF和九城合资的新能源汽车项目落户呼和浩特
  2. nginx的反向代理
  3. 基于SSM+前端的美颜网站(数字图像处理课设必备)
  4. 送一台程序员看片神器,真香!
  5. 相机镜头焦距和拍摄物体高度表
  6. java300行程序代码_神级程序员JavaScript300行代码搞定汉字转拼音
  7. AI/机器学习/深度学习三者的区别是什么?
  8. 在Ubuntu下最靠谱的键位修改方法 ,亲测有效
  9. 外卖订餐网站系统源码,微信订餐网站系统定制开发建设
  10. 阿斌好友篇之猫妖转世