一.创建一个Android Studio项目:
二.申请百度地图key.
此处需要重点注意,由于Studio和Eclipse的开发环境不同,导致Sha1值的获取有差异,在Studio下无法像Eclipse那样获取Sha1值.
而且Studio中默认安装运行的apk是debug版本,不是release版的,debug版的apk有默认的debug.keystore签名,和release版的签名是不一样的.
所以如果采用的是百度地图官网提供的获取签名的方法,是获得的默认的debug版的签名,不是正式的签名.
如果我们开发的app就是自己玩玩,那么采用默认的debug签名来获取Sha1值就可以了,但是如果我们要正式发布,则需要用release版的签名来获取Sha1值才行.
我这里直接通过release签名文件来获取Sha1值,和实际开发一致.
1.创建release版的签名文件:
在Eclipse中,签名文件的后缀是.keystore,而Studio中的签名是.jks.
所以先去Builde菜单下生成一个正式的.jks签名文件.
选择Create new…生成一个新的签名文件:
这个跟eclipse下生成签名文件是一样的.不多说.
OK之后直接是如下界面,填写好刚才的信息即可.
Next下一步,出现如下界面:
如果进行了多渠道打包配置,则在Flavors中进行选择即可.
2.进行release版签名的验证,生成正式签名的apk:
点击Project Structure菜单,选择Signing签名选项:
填写各种签名信息即可.
此时在builde.gradle文件中就多了对正式签名文件的配置引用:
注意要在buildTypes中添加对正式签名配置的引用.
signingConfig signingConfigs.release
3.获取Android签名证书的sha1值两种方式:
第一种方法:使用keytool
第1步:运行进入控制台
第2步:定位到.android文件夹下,输入cd .android
第3步:输入keytool -list -v -keystore debug.keystore,会得到三种指纹证书,选取SHA1类型的证书(密钥口令是android),例如:
其中keytool为jdk自带工具;keystorefile为Android 签名证书文件
第二种方法:
打开项目, 将左侧项目目录结构排序方式选择为Android
项目界面右侧点击“Gradle”-> signingReport,然后点击刷新按钮,出现应用程序名称
找到并点击Tasks->android->signingReport
在信息输出框中显示发布版和开发版的安全码(MD5和SHA1)
3.申请百度地图的key:
去百度控制台申请Key,填上Sha1和包名,至此,生成所需要的Key:
成功返回:
三.配置开发环境:
接下来就按照百度地图官网的步骤把开发环境搭建好就可以了.
1.引入所需jar包和so库.
1.将百度地图SDK中的jar包复制到工程目录下的libs文件夹
2.选择所有jar包,右键->add as library->确定
3.在main目录下直接创建jniLibs目录,然后把各种.so库拷贝进来即可.【请将v8a、v7a和abi文件夹都复制进去,否则会出现错误:No implementation found for long com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create】