获取 sha1
打开 cmd
1. cd .android
2. keytool -list -v -keystore debug.keystore
3. 输入密钥: android
4. 复制 sha1编号 后面在获取 amap key需要
在高德开发者平台创建andorid 项目
打开网址
http://lbs.amap.com/
在控制台中创建应用 -> 添加 key ->选择安卓应用 输入相关内容
其中 sha1是在 上一步中得到
package: 在项目根目录的 config.xml中 <widget id="io.cordova.hellocordova"
id的值就是包名
可能遇见的问题
- keytool不是内部命令
- 是否整缺配置 JAVA_HOME
- 打开环境变量 我的电脑(右键)->属性 ->高级系统设置->环境变量->系统变量 点击新建 JAVA_HOME变量 变量值是 java安装路径 一般为 C:\Program Files\Java\jdk1.8.0_171
- 然后在系统变量中 点击 path 这个变量 在这个变量的值后面添加 ;%JAVA_HOME%\bin
添加 amap插件 插件地址https://github.com/yccp/cordova-plugin-amap-location
cordova plugin add cordova-plugin-amap-location --variable IOS_KEY=638c853696edb16d00c4b087fa3d71f5 --variable ANDROID_KEY=638c853696edb16d00c4b087fa3d71f5 --save
使用方法
配置
var config = {
// ios配置
locationTimeout: 10, // 定位Timeout(s)
reGeocodeTimeout: 10, // 地址信息Timeout(s)
iosAccuracy: 1000, // 精确度(m)
distanceFilter: 10, // 连续定位最小位移(m)
watchWithReGeocode: false, // 连续定位是否返回地址信息
iosBackground: true, // 后台定位
// android配置
interval: 2000, // 连续定位时间间隔(ms)
androidAccuracy: 1, // 精确度 0. Battery_Saving 1. Hight_Accuracy, 2. Device_Sensors
needAddress: true // 是否返回地址信息
}
单次定位
window.AmapLocation.getCurrentPosition(
config
,
x => {
console.log(x);
},
e => console.error(e)
);
连续定位
window.AmapLocation.watchPosition(
config
,
x => {
console.log(x);
},
e => console.error(e)
);
清除连续定位
window.AmapLocation.clearWatch(
x => {
console.log(x);
},
e => console.error(e)
);