Files
zhini_im/检查高德Key配置.md

127 lines
3.2 KiB
Markdown
Raw Normal View History

# 高德Key配置检查指南
## 错误代码 1008 说明
**错误代码 1008** 表示"Key鉴权未通过",通常由以下原因导致:
### 可能的原因:
1. **Key与包名不匹配**
- 当前应用包名:`com.xunpaisoft.social`
- 需要在控制台确认Key绑定的包名是否一致
2. **Key与SHA1不匹配**
- Debug版本和Release版本可能使用不同的签名
- 需要同时配置Debug和Release的SHA1
3. **搜索服务权限未开启**
- 逆地理编码需要使用**搜索服务**
- 需要在控制台为Key开启"搜索服务"权限
4. **Key类型不匹配**
- 必须使用**Android平台**的Key
- 不能使用Web服务的Key
## 检查步骤
### 1. 获取应用的SHA1签名
#### 方法一使用keytool命令推荐
**Debug版本签名**
```bash
# 查看debug keystore的SHA1通常在用户目录下
keytool -list -v -keystore %USERPROFILE%\.android\debug.keystore -storepass android -alias androiddebugkey | findstr /i "SHA1"
```
**Release版本签名**
```bash
# 查看项目keystore的SHA1
keytool -list -v -keystore keystore2 -storepass yuchen.com -alias yuchen | findstr /i "SHA1"
```
#### 方法二通过Android Studio获取
1. 打开Android Studio
2. 点击右侧 **Gradle** 面板
3. 展开:`app``Tasks``android`
4. 双击 `signingReport`
5. 在Build窗口查看SHA1值
### 2. 登录高德开放平台检查Key配置
访问https://lbs.amap.com/
1. **登录控制台**
2. **进入"应用管理"** → 找到对应的应用
3. **检查Key配置**
- ✅ 包名:`com.xunpaisoft.social`
- ✅ SHA1必须与应用的SHA1签名一致
- ✅ 平台:必须是"Android平台"
4. **检查服务权限**
-**定位服务**:必须开启
-**搜索服务**:必须开启(用于逆地理编码)
### 3. 当前配置信息
```
包名com.xunpaisoft.social
Key2c5aa17a9ae467543613267692b4a206
```
### 4. 常见问题解决
#### 问题1Key与SHA1不匹配
**解决方案:**
1. 获取正确的SHA1签名见步骤1
2. 在高德控制台添加该SHA1到Key配置中
3. 重新编译运行
#### 问题2搜索服务权限未开启
**解决方案:**
1. 登录高德控制台
2. 进入Key管理页面
3. 找到对应的Key
4. 在"服务"选项中勾选"搜索服务"
5. 保存配置
#### 问题3使用了错误的Key类型
**解决方案:**
1. 确认Key是"Android平台"类型
2. 如果是"Web服务"类型,需要重新创建"Android平台"的Key
### 5. 验证配置
配置完成后,重新编译运行应用,查看日志:
**成功日志:**
```
AMapLocationHelper: 高德搜索服务API Key设置成功: 2c5aa17***
AMapLocationHelper: 逆地理编码成功 - 地址: xxx
```
**失败日志1008错误**
```
AMapLocationHelper: 逆地理编码失败 - 错误代码: 1008
```
如果仍有1008错误请检查
1. SHA1是否正确配置
2. 搜索服务权限是否已开启
3. 包名是否匹配
## 快速检查命令
```bash
# 检查Debug SHA1
keytool -list -v -keystore %USERPROFILE%\.android\debug.keystore -storepass android -alias androiddebugkey | findstr /i "SHA1"
# 检查Release SHA1
keytool -list -v -keystore keystore2 -storepass yuchen.com -alias yuchen | findstr /i "SHA1"
```