高德地图API INVALID_USER_SCODE问题以及keystore问题
今天这篇文章会给大家介绍三个问题:
1,接入API时出现invalid_user_scode问题
首先进行第一个大问题,接入高德地图API时出现invalid_user_scode问题
因为项目需要接入高德地图的API,在接入其它API时会出现类似问题,在进行定位的时候出现了下列问题
运行时log信息如下
可以看到,定位失败有两个原因:
1,错误代码为10,定位服务启动失败。
2,错误代码为7,key错误。
根据高德地图的官方使用文档的介绍,对相关问题进行处理
问题1:服务启动失败:检查清单配置文件Androidmanifest.xml,服务已经配置完成,如下
<service android:name="com.amap.api.location.APSService"/>
后来对比高德地图给的demo才发现,是因为少加了一个jar包,如下图中未添加蓝色选中的包
添加上之后,运行程序,进行定位操作,log信息如下:
由log所打印的信息,可以看出三点:
1,定位服务启动失败问题已解决,现已启动成功
2,key错误问题仍旧存在
3,调用定位方法时是每隔一小段时间便进行一次定位
接下来,需要解决问题2。
问题2:key错误,官方文档中说,请仔细检查key绑定sha1与签名的apk的sha1是否一致:
在解决该问题时发现我犯了两个不该犯的错误:
第一,在build.gradle文件中忘记添加代码:
android {
signingConfigs {
//调试版的keystore
debug {
storeFile file("keystore文件所在位置")
storePassword "你规定的密码"
keyAlias "在创建keystore时你所填写的alias"
keyPassword "你规定的密码"
}
//发布版的keystore
release {
storeFile file("keystore文件所用位置")
storePassword "你规定的密码"
keyAlias "在创建该keystore文件时你所写的alias"
keyPassword "你规定的密码"
}
}
}
第二,在申请key时,我的sha1填写格式错误,错误示范如下:
正确的填写格式如下:
到此,我的程序已经可以实现定位,如下图:
2,如何创建自己的keystore,以及如何修改发布版和测试版的keystore
现在讨论第二个大问题,如何创建keystore文件,以及如何去修改发布版和开发版的keystore:
以Androidstudio为例进行keystore文件的创建:
接下来:
然后,图中红线标注的地方,是必须要记住的 ,因为需要在程序里使用
完成以上步骤后,你的keystore文件就创建成功了,接下来,你需要在build.gradle文件中使用,文中已经交到了,不再赘述,对不同 的keystore文件做相应修改即可,但要记住当你的keystore文件修改时也就代表你程序的sha1将要发生变化,一定要记得在网上对你的应用进行配置更新
3,如何查看keystore文件的sha1安全码
第三个大问题,有了keystroe文件后,如何去查看所谓的sha1码呢?
需要借助cmd,(如果不知道如何打开cmd,以及jdk的配置,请自行百度,博主不再多说)
在cmd中输入如下命令:keytool -list -keystore <keystore位置>
然后输入密码,得到sha1:
高德地图API INVALID_USER_SCODE问题以及keystore问题的更多相关文章
- 高德地图api实现地址和经纬度的转换(python)
利用高德地图web服务api实现地理/逆地址编码 api使用具体方法请查看官方文档 文档网址:http://lbs.amap.com/api/webservice/guide/api/georegeo ...
- 高德地图API应用
高德地图官网:http://api.amap.com/javascript/ 输入关键字,搜索地址功能的网页: 1.引用远程Map Api(js)网址形式(注册后获取) 2.定义个<div> ...
- 【高德地图API】如何解决坐标转换,坐标偏移?
http://bbs.amap.com/thread-18617-1-1.html#rd?sukey=cbbc36a2500a2e6c2b0b19115118ace519002ff3a52731f13 ...
- android 高德地图API 之 java.lang.UnsatisfiedLinkError: Couldn't load amapv3: findLibrary returned null错误
错误场景: 运行android app时,在运行到调用高德地图API时,出现 “java.lang.UnsatisfiedLinkError: Couldn't load amapv3: findLi ...
- 高德地图API
这周计划: 周一 早上 (高德地图API) 中午写(IFE PART ONE) 下午(高德地图API) 下班(IFE PART ONE)
- 【高德地图API】汇润做爱地图技术大揭秘
原文:[高德地图API]汇润做爱地图技术大揭秘 昨日收到了高德地图微信公众号的消息推送,说有[一大波免费情趣用品正在袭来],点进去看了一眼,说一个电商公司(估计是卖情趣用品的)用高德云图制作了一张可以 ...
- 【高德地图API】一句话搞定webmap(一)——轻地图组件
原文:[高德地图API]一句话搞定webmap(一)——轻地图组件 摘要: 遥想当年,在APP中加入LBS元素相当困难:要刻苦学习java,要刻苦学习iOS开发,要刻苦学习javascript…… 而 ...
- 【高德地图API】从零开始学高德JS API(七)——定位方式大揭秘
原文:[高德地图API]从零开始学高德JS API(七)——定位方式大揭秘 摘要:关于定位,分为GPS定位和网络定位2种.GPS定位,精度较高,可达到10米,但室内不可用,且超级费电.网络定位,分为w ...
- 【高德地图API】从零开始学高德JS API(八)——地址解析与逆地址解析
原文:[高德地图API]从零开始学高德JS API(八)——地址解析与逆地址解析 摘要:无论是百度LBS开放平台,还是高德LBS开放平台,其调用量最高的接口,必然是定位,其次就是地址解析了,又称为地理 ...
随机推荐
- 分别用Java和JS读取Properties文件内容
项目中经常用到的配置文件,除了XML文件之外,还会用到Properties文件来存储一些信息,例如国际化的设置.jdbc连接信息的配置等.有时候也会把一些路径或者sql语句放到Properties中, ...
- Tetris
he Tetris game is one of the most popular computer games ever created. The original game was designe ...
- c++中的继承和组合
C++的“继承”特性可以提高程序的可复用性.正因为“继承”太有用.太容易用,才要防止乱用“继承”.我们要给“继承”立一些使用规则: 一.如果类A 和类B 毫不相关,不可以为了使B 的功能更多些而让B ...
- Jquery重新学习之二[属性attr(),removeAttr(),prop(),removeProp()]
1:属性.attr(name|pro|key,val|key,fn)与removeAttr(name) 1.1 .attr(name) 参数name为属性名称 <a id="my_hr ...
- JAVA生成解析二维码
package com.mohe.twocode; import java.awt.Color; import java.awt.Graphics2D; import java.awt.image.B ...
- JavaScript 数组方法处理字符串 prototype
js中数组有许多方法,如join.map,reverse.字符串没有这些方法,可以“借用”数组的方法来处理字符串. <!doctype html> <html lang=" ...
- 安卓平台ARM Mali OpenCL例子-灰度转换(转)
手头一块RK3288的板子,在板子上测试了一张1080p的彩色图灰度转换的OpenCL例子.OpenCL没有任何优化.例子请移步这里. 该例子是编译成安卓平台下的可执行程序. 进入jni文件夹,进行如 ...
- UESTC-1307-windy数
windy定义了一种windy数. 不含前导零且相邻两个数字之差至少为2的正整数被称为windy数. windy想知道,在A和B之间,包含A和B,总共同拥有多少个windy数? Input 包括两个整 ...
- this详解与面向对象编程
原文链接:http://www.cnblogs.com/kongxy/p/4581223.html JS中的this对象详解 声明:文章转载自上面地址,版权归阿孔所有,这里仅供本人学习笔记使用 t ...
- 【laravel54】查看版本号3种方式
1:最简单的用命令行实现>进入项目目录,执行 > php artisan --version 2:查看文件 vendor\laravel\framework\src\Illuminate\ ...