Flutter 集成 amap_flutter_location

Flutter 集成 amap_flutter_location

今天用 amap_flutter_location 写了个demo,过程中一直报:INVALID_USER_SCODEerror_cod: 1008,下面给大家看下主要流程

一、注册账号

  1. 在高德开放平台注册开发者账号
  2. 创建应用,获取 app key

二、配置

  1. 导入 amap_flutter_location
  2. gradle build 成功后,将 amap_flutter_location -> build.gradle -> android -> dependencies 节点下,引入插件的 compileOnly 修改为 api
例如:

android {
    compileSdkVersion 29

    defaultConfig {
        minSdkVersion 16
    }
    lintOptions {
        disable 'InvalidPackage'
    }
    dependencies {
    	//compileOnly 'com.amap.api:location:5.6.0'
        api 'com.amap.api:location:5.6.0'
    }
}
  1. 清单文件下配置相关权限,并在运行时请求必要权限,具体请参考:高德开放平台
<!-- 这是我自己配置的,亲测可行 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
  • 在清单文件 application 节点下导入下面的service
    ps: 注意,如果没有把 compileOnly 修改为 api ,这里就会报错
<service android:name="com.amap.api.location.APSService" />

三、使用

使用的话参考 文档 就足够了,主要是要注意配置的信息是否正确。下面列几个坑点

  • 生成 app key 的时候需要证书的 SHA1 值,这里我使用通过命令行生成的 keystore 死活不行,最后通过Android Studio生成的就可以了(怀疑是别名的问题)
  • 报错:INVALID_USER_SCODE,报这个错主要就是配置问题。先检查 SHA1 值是否正确;确保没有问题后,在检查配置的包名有没有问题;不对的话,看看自己有没有配置service;最后还不行,就看看 官方回复
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值