自2018年10月18日起,高德开发者论坛除车机板块外,其他板块将停止发帖与维护,如您有使用问题请 提交工单 联系我们,感谢您的理解。

查看: 23728|回复: 75

[应用案例] 解决Android Key问题,看这一篇就够了

  [复制链接]
最佳答案
50 

155

主题

482

帖子

3万

积分

QQ游客

积分
36099
发表于 2015-12-8 16:15:38 | 显示全部楼层 |阅读模式
发表帖子
API/SDK版本号: 2.0
产品:
手机型号:
使用接口:
                          解决Android Key问题,看这一篇就够了

       所有的Android应用程序都要求用一个证书进行数字签名,Android系统不会安装没有进行签名的App。平时我们的程序可以在模拟器上安装并运行,是因为在应用程序开发期间是以Debug状态进行编译的,因此ADT会自动用默认的密钥和证书来进行签名,而在以发布模式编译时,apk文件就不会得到自动签名,这样就需要进行手工签名。手工签名的签名文件当然是公司/开发者自己造的。签名文件怎么造?举个栗子:http://www.cnblogs.com/lgzh3/archive/2012/01/19/2327181.html

       给apk签名可以带来以下好处(其实签名是必须的):
       1. 应用程序升级:如果你希望使用你造的App的用户无缝升级到最新版本,那么你造的app就必须用同一个证书进行签名。这是由于傲娇的Android系统只有识别出你造的App是以同一个证书签名的,才会允许安装升级的应用程序。如果你不小心采用了不同的证书,那么系统会要求你的应用程序采用不同的包名,在这种情况下手机相当于安装了一个全新的应用程序。如果想升级应用程序,签名证书要相同,包名称要相同,Android就是如此傲娇。
       2.应用程序模块化:Android系统可以允许多个应用程序在一个进程里运行,但前提是他们都是用同一个证书签名的。实际上,系统把他们作为一个应用程序对待的,此时你可以把应用程序以模块的方式进行部署,而用户可以独立的升级其中的一个模块。这就是模块化,又叫插件化!
       3.代码或者数据共享:Android提供了基于签名的权限机制,那么一个应用程序就可以为另一个以相同证书签名的应用程序公开自己的功能。以同一个证书对多个应用程序进行签名,利用基于签名的权限检查,你就可以在应用程序间以安全的方式共享代码和数据了。<permission android:protectionLevel="normal" />
      
      机智的小伙伴一定发现了,你造的App在其整个生命周期中至少会用到2(Debug时1个、Release发布时1个)个签名。
      两个签名对应两个不同的数字签名指纹验证码(Digital Signature sha1),所以高德LBS开放平台为机智的开发者小伙伴们提供了一个Key绑定2个指纹验证码的功能!

      小伙伴可以在发布版安全码的小框里填写上公司签名的指纹验证码(sha1);
      在调试版安全码的小框里填写上开发工具(androidstudio、eclipse)默认的签名文件指纹验证码(sha1)
      
       这样App在debug和export时就不必担心key不可用的问题啦!

android-key.png
回复

使用道具 举报

最佳答案
0 

2

主题

35

帖子

104

积分

新手上路

Rank: 1

积分
104
发表于 2016-4-17 16:17:41 | 显示全部楼层
xjw1314521 发表于 2016-3-3 17:48
我的也是这样的问题,定位可用,但是解析地址的时候和搜索的时候就会提示出现MD5安全问题
我的安全码727a ...

我也是,请问你解决了吗?
回复 支持 2 反对 0

使用道具 举报

最佳答案
0 

0

主题

2

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2015-12-26 17:32:06 | 显示全部楼层
请问‘获取KEY’成功后,是否可以立即使用这个KEY?如果不是,过多久生效?
回复 支持 2 反对 0

使用道具 举报

最佳答案
0 

0

主题

2

帖子

8

积分

新手上路

Rank: 1

积分
8
发表于 2016-1-25 09:22:41 | 显示全部楼层
我的出现  定位失败 7:key错误    可是我都已经填好Key了 为什么还报错?
回复 支持 2 反对 0

使用道具 举报

最佳答案
1 

8

主题

25

帖子

128

积分

新手上路

Rank: 1

积分
128
发表于 2016-1-19 18:20:48 | 显示全部楼层
以前需要申请两个key,一个给debug,一个给release。
这下不用每次改来改去了,太赞了!!!
回复 支持 1 反对 0

使用道具 举报

最佳答案
0 

0

主题

2

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2016-1-12 15:02:15 | 显示全部楼层
获取android key时时提示:注册失败   注册失败,securityCode超过限制长度:128
填写sha1值是不需要分割号:的吗?:去掉也不对,
我的SHA1: A0:90:9D:89:07B:1B:87:5C:06:04:2F:90:7C:8C:2D:1E:65:0D4
着急解决,
回复 支持 1 反对 0

使用道具 举报

最佳答案
432 

5

主题

4048

帖子

8759

积分

超级版主

Rank: 8Rank: 8

积分
8759
发表于 2016-1-12 11:34:31 | 显示全部楼层
huancheclub 发表于 2015-12-26 17:38
请问我的KEY调用定位正常,但是调搜索就:
      com.amap.api.services.core.AMapException: 用户MD5安全 ...

请提供下key,我这边排查一下。
回复 支持 0 反对 1

使用道具 举报

最佳答案
432 

5

主题

4048

帖子

8759

积分

超级版主

Rank: 8Rank: 8

积分
8759
发表于 2016-1-12 11:34:16 | 显示全部楼层
OnlyByIC 发表于 2016-1-1 22:48
请问你解决了这个问题了么  我也是这个问题所以无法使用云检索服务  如果解决了 劳烦告知一下 谢谢 ...

请提供下使用的key,我这边查询一下。
回复 支持 0 反对 1

使用道具 举报

最佳答案
0 

1

主题

3

帖子

11

积分

新手上路

Rank: 1

积分
11
发表于 2016-1-1 22:48:46 | 显示全部楼层
huancheclub 发表于 2015-12-26 17:38
请问我的KEY调用定位正常,但是调搜索就:
      com.amap.api.services.core.AMapException: 用户MD5安全 ...

请问你解决了这个问题了么  我也是这个问题所以无法使用云检索服务  如果解决了 劳烦告知一下 谢谢
回复 支持 1 反对 0

使用道具 举报

最佳答案
0 

0

主题

2

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2015-12-26 17:38:50 | 显示全部楼层
请问我的KEY调用定位正常,但是调搜索就:
      com.amap.api.services.core.AMapException: 用户MD5安全码未通过
Android的,应该怎么解决?
回复 支持 0 反对 1

使用道具 举报

最佳答案
50 

1

主题

1244

帖子

2980

积分

超级版主

Rank: 8Rank: 8

积分
2980
发表于 2015-12-11 11:58:17 | 显示全部楼层
请各位开发者同学仔细阅读
= =
回复 支持 0 反对 1

使用道具 举报

最佳答案
0 

0

主题

2

帖子

18

积分

新手上路

Rank: 1

积分
18
发表于 2016-1-12 15:12:42 | 显示全部楼层
紧急求助!!!!!!!!!
QQ截图20160112151043.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|小黑屋|高德开发者论坛

Copyright ©2014 高德开发者论坛.All Rights Reserved |京ICP证070711号

意见反馈 常见问题 服务条款 联系我们
快速回复 返回顶部 返回列表