Android 高德地图开发,手机显示用户MD5安全码未通过
<p>最近在学习安卓开发调用高德地图api,在手机上调试时,其他功能都正常,但是在调用路线规划和搜索功能时会报用户MD5安全码未通过,</p><p>原因是因为在高德地图主页申请key的时候,发布版安全码和调试版安全码写的不对,以下介绍怎么填写:</p>
<p><strong>通过Android Studio编译器获取测试版的SHA1</strong></p>
<p>第一步、打开Android Studio的Terminal工具</p>
<p>第二步、输入命令:keytool -v -list -keystore keystore文件路径</p>
<p>第三步、输入Keystore密码(密码默认是<em>android</em>)</p>
<div class="md-atomic"><img src="http://cache.amap.com/lbs/static/as_ide_terminal_new.png"></div>
<div class="md-atomic">
<p><strong>获取发布版的SHA1</strong></p>
<p> </p>
<div>
<div>
<p>1.首先打开Android Studio,点击上方工具栏Build—Generate Signed APK</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="704" data-height="46"><img src="//upload-images.jianshu.io/upload_images/13876820-8a4d50e0b0b39631.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/704/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p>2.然后会进入这个界面:</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="702" data-height="381"><img src="//upload-images.jianshu.io/upload_images/13876820-706fdc025da61ac6.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/702/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p> 这时,对于之前没有做过任何操作的人来说,直接选择"Create new..."就可以了</p>
<p>3.点击"Create new..."后,可看到下面界面:</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="567" data-height="565"><img src="//upload-images.jianshu.io/upload_images/13876820-7253833ca50c94bd.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/567/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p> 关于第一项"Key store path:"路径的选择,主要目的是新建密钥文件。这里需要注意的是对于每一个Android项目来说,一个project只能对应一个Key,所以说我认为最好是将这个Key密钥文件当前所在项目放在一起,这样不容易混淆且很容易寻找。那么我是将这个文件建在了我这个项目的App文件夹里面了。这里不要忘了下面红色的方框中给你的文件取一个好懂的名字</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="444" data-height="429"><img src="//upload-images.jianshu.io/upload_images/13876820-0bab7072d844e297.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/444/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p>4.点击确定之后:下面我来解释每一行的内容</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="561" data-height="563"><img src="//upload-images.jianshu.io/upload_images/13876820-b5d45b1e627f2d76.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/561/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p> Key store path:上一步已经选择好了</p>
<p> Password:此处输入密码 Confirm:再次刚刚输入的密码</p>
<p> Alias:这里是给你创建的Key取别名,一般都比较简单,此处我取名为key0</p>
<p> Password和Confirm:和上面输入密码和确认密码一样,设置密码即可,我是两个密码取得都一样</p>
<p> Validity(years):这里指密钥有效的时限,作为学生党或者练练手的兴趣爱好者这里可以不去管它</p>
<p> 后面的方框里的Certificate顾名思义,我觉得应该是填一些正规性的东西,此处我了解也不多,我就瞎填了几个,然后后面的地点呀省份呀自己根据实际情况填写就行了。但是最后一个东西是什么我真的不知道,我看见网上有人填了,也有人没填,我反正试了一下,不填其实也没多大关系,我觉得这整个长方形板块就可填可不填吧。最后点击OK即可</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="699" data-height="367"><img src="//upload-images.jianshu.io/upload_images/13876820-adba7fc5423e8b72.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/699/format/webp"></div>
</div>
<div class="image-caption">记得勾上remember passwords点击next</div>
</div>
<p>PS:下面我换了一个项目做讲解,是我最初弄的那个项目,下面内容不影响接着上面,只是为节省自己的工作量</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="689" data-height="352"><img src="//upload-images.jianshu.io/upload_images/13876820-12abc658633b3987.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/689/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p>这里要注意"Signature Versions:"这里一定要至少选择一个,一般选择V2这一项就可以了,然后点击finish</p>
<p>5.打开你的项目文件栏:</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="417" data-height="443"><img src="//upload-images.jianshu.io/upload_images/13876820-c3d3e0b2b8aefc0a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/417/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p> 你会发现生成了两个文件,上面那个文件在release包中,这个文件尾缀为.apk,这个大概就能想到它是一个安装包了,这个也可以安装到手机上了,不过重点不是这个,我们现阶段也不需要安装。下面这个.jks文件就是我们之前建立的密钥文件(因为这里我是换了一个项目,所以密钥名和前面的不一样,但是方法是一样的)</p>
<p>6.进入当前项目的gradle文件夹的"gradle.properties"里面</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="313" data-height="227"><img src="//upload-images.jianshu.io/upload_images/13876820-4bb74c37c69a6da2.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/313/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p> 添加下面红色方框代码:(白色部分即为注册时的密码)</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="788" data-height="614"><img src="//upload-images.jianshu.io/upload_images/13876820-78f7c2cda9f8ed00.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/788/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p>7.打开命令提示符,首先将目录切换到密钥文件.jks所在的目录,我的输入参考如下:</p>
<p> cd C:\Users\a\AndroidStudioProjects\PreDesign_Project\app</p>
<p> 然后切换到密钥文件所在目录下之后,输入"keytool -list -v -keystore Key_store.jks(你的密钥文件名)"</p>
<p> PS:这里的"Key_store"是我的密钥文件名,你取的什么名字就换成你自己取的名字</p>
<p> 然后依旧是按两次回车,得到下面的信息:</p>
<div class="image-package">
<div class="image-container">
<div class="image-container-fill"> </div>
<div class="image-view" data-width="1135" data-height="625"><img src="//upload-images.jianshu.io/upload_images/13876820-b43076365979e83d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1000/format/webp"></div>
</div>
<div class="image-caption"> </div>
</div>
<p>可以看到,我们想要的发布版安全码SHA1就得到了,然后将其填到"发布版安全码SHA1:"即可</p>
</div>
(获得发布版安全码方法借鉴自简书用户:CharotteBelle 链接:https://www.jianshu.com/p/4183d541dcb5)<br><br></div>
<p> </p>
</div>
<div class="md-atomic"> </div><br><br>
来源:https://www.cnblogs.com/zhangliqiangvictory/p/10808002.html
頁:
[1]