Appearance
接入说明
在使用滴图出行开放平台所提供的各项地图 SDK 之前,需提前获取 key。
Key是滴图开放平台授权给开发者调用其能力的唯一凭证,请您妥善保管。
获取 key
key 的获取,请您登录【官网控制台】,在【创建 key】中自助完成申请。
iOS和Android两端,在申请时需要提供的内容不尽相同。Android应用在申请时需提供
- 应用的包名
PackageName - 应用对应
签名秘钥的SHA1编码
如下是具体的获取方式。
应用包名PackageName的获取方式
打开 Android 项目的 AndroidManifest.xml 配置文件,package 属性所对应的内容为应用包名。
TIP
检查 build.gradle 文件的 applicationId 属性是否与上文提到的 package 属性一致,若不一致需调整一致,否则会导致 INVALID_USER_SCODE。
签名秘钥的SHA1的获取方式
Android应用,分为调试签名版本(debug)和发布签名版本(release),他们的 SHA1 值不同,需要根据需要选择。
有如下2种方式获取:
- 通过 Android Studio 获取 SHA1
- 使用 keytool(JDK自带工具)获取 SHA1
1. 通过 Android Studio 获取 SHA1
- 打开 Android Studio 的 Terminal 工具,或在Android Studio 右侧gradle任务列表中寻找该gradle任务。;
- 输入或找到命令:
./gradlew :app:signingReport,运行即可.
任务运行后,底部的 Run 窗口会输出所有构建变体的签名信息。在输出内容中,找到 Variant: debug 和 Variant: release 对应的 SHA1 值:
shell
Variant: debug
Config: debug
Store: /Users/your_username/.android/debug.keystore
Alias: AndroidDebugKey
MD5: XXX
SHA1: XXX
SHA-256:XXX
Valid until: Wednesday, August 27, 2053
----------
Variant: release
Config: null
Store: null
Alias: null
MD5: XXX
SHA1: XXX
SHA-256:XXX
Valid until: Wednesday, August 27, 2053
----------2. 使用 keytool(JDK自带工具)获取 SHA1
- 确保电脑已正确安装JDK的keytool工具(https://docs.oracle.com/en/java/javase/11/tools/keytool.html);
- 进入应用签名文件所在的文件夹后,在Terminal中输入如下命令:
- 调试版本使用 debug.keystore,命令为:
keytool -list -v -keystore debug.keystore。 - 发布版本使用 apk 对应的 keystore,命令为:
keytool -list -v -keystore [apk对应的keystore]。
- 调试版本使用 debug.keystore,命令为:
- 输入命令后会提示输入密钥库密码;
- 调试版本开发模式默认密码是 android;
- 发布模式的密码是为 apk 的 keystore 中设置的密码;
- 输入密钥后回车确认(若没设置密码,可直接回车),此时可在显示的信息中获取 SHA1 的值。
shell
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 1 entry
Alias name: androiddebugkey
Creation date: Sep 4, 2023
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: C=US, O=Android, CN=Android Debug
Issuer: C=US, O=Android, CN=Android Debug
Serial number: 1
Valid from: Mon Sep 04 19:11:27 CST 2023 until: Wed Aug 27 19:11:27 CST 2053
Certificate fingerprints:
SHA1: XXX
SHA256: XXX
Signature algorithm name: SHA1withRSA (weak)
Subject Public Key Algorithm: 2048-bit RSA key
Version: 1下载SDK,并在代码初始化开放平台的鉴权模块,并传入 key
下载相关SDK及Demo见:相关下载
接入SDK
将aar包拷贝至libs目录下,在gradle中增加:api(files("libs/export-sdk-0.0.xxx.aar"))即可。
调用隐私相关接口
在传入key之前,必须调用隐私协议相关接口,确保相关的隐私数据是经过用户同意的。
java
//定位隐私协议授权
DMapLocationClientPrivacy.updatePrivacyShow(this, true, true);
DMapLocationClientPrivacy.updatePrivacyAgree(this, true);
//地图隐私协议授权
DMapMapViewClientPrivacy.updatePrivacyShow(this, true, true);
DMapMapViewClientPrivacy.updatePrivacyAgree(this, true);
//导航隐私协议授权
DMapNavigationClientPrivacy.updatePrivacyShow(this, true, true);
DMapNavigationClientPrivacy.updatePrivacyAgree(this, true);
//轨迹隐私协议授权
DMapTrackUploadClientPrivacy.updatePrivacyShow(this, true, true);
DMapTrackUploadClientPrivacy.updatePrivacyAgree(this, true);传入Key,进行开放平台鉴权初始化
可通过如下代码进行初始化。需要在初始化前,完成隐私协议的接口调用。
java
class SomeApplication extends Application {
void onCreate() {
DiDiAuth.init(this, "Your key");
}
}上述代码需要在启动相关SDK前调用。建议可在Application.onCreate()中调用。