127 lines
3.2 KiB
Markdown
127 lines
3.2 KiB
Markdown
# 高德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
|
||
Key:2c5aa17a9ae467543613267692b4a206
|
||
```
|
||
|
||
### 4. 常见问题解决
|
||
|
||
#### 问题1:Key与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"
|
||
```
|
||
|