Code Monkey home page Code Monkey logo

cordova-plugin-gaodelocation-chenyu's Introduction

高德地图定位

插件环境 cordova-android >= 7.0.0

基础功能

  • 单次定位
  • 持续定位

1.申请密钥

请参照:
申请android密钥定位SDK
申请ios密钥定位SDK

2.安装插件

# 1.通过npm 安装 

cordova plugin add cordova-plugin-gaodelocation-chenyu --variable  ANDROID_API_KEY=your android key --variable  IOS_API_KEY=your ios key

npm install --save @ionic-native/gao-de-location

# 2.通过github安装 
cordova plugin add https://github.com/waliu/cordova-plugin-gaodelocation-chenyu  --variable  ANDROID_API_KEY=your android key --variable  IOS_API_KEY=your ios key

# 3.或者本地安装
cordova plugin add --link 文件路径  --variable ANDROID_API_KEY=your android key --variable  IOS_API_KEY=your ios key

3.js/ts使用方法

// 1.js项目调用
/**
 * 单次定位
 * @param success 成功执行的回调
 * @param error 失败执行的回调
 * @param PositionOption 参数对象
 * @return 返回值说明
 */
window.GaoDe.getCurrentPosition(successCallback, failedCallback,option);
/**
 * 持续定位
 * @param success 成功执行的回调
 * @param error 失败执行的回调
 * @param PositionOption 参数对象
 * @return 返回值说明
 */
window.GaoDe.startSerialLocation(successCallback, failedCallback,option);
/**
 * 停止持续定位
 * @param success 成功执行的回调
 * @param error 失败执行的回调
 */
window.GaoDe.stopSerialLocation(successCallback, failedCallback);

// 2.ts/ionic 2+ 项目调用。
// 可以使用以下三种方式调用
// ① (<any>window).方法名
// ② window["GaoDe"].方法名
// ③ 通过声明.d.ts的方式 例如 declare GaoDe; GaoDe.方法名
// ④ 通过ionic native 的方式
// 以下为①的调用示例:
(<any>window).GaoDe.getCurrentPosition(successCallback, failedCallback,option);
(<any>window).GaoDe.startSerialLocation(successCallback, failedCallback,option);
(<any>window).GaoDe.stopSerialLocation(successCallback, failedCallback);

ionic native 调用方式

4.定位方法说明

获取单次定位

getCurrentPosition(successCallback,failedCallback,option);

参数 类型 说明
successCallback funtion 回调函数
failedCallback funtion 回调函数
option PositionOption 定位参数

PositionOption

参数 类型 说明
androidOption androidOption android定位参数
iosOption iosOption ios定位参数

androidOption

参数 类型 说明
locationMode Number 1.精确定位 2.仅设备定位模式;3.低功耗定位模式
gpsFirst Boolean 设置是否gps优先,只在高精度模式下有效。默认关闭
HttpTimeOut Number 设置网络请求超时时间。默认为30秒。在仅设备模式下无效
interval Number 设置定位间隔。默认为2秒 连续定位有效
needAddress Boolean 设置是否返回逆地理地址信息。默认是true
onceLocation Boolean 设置是否单次定位。默认是false
onceLocationLatest Boolean 设置是否等待wifi刷新,默认为false.如果设置为true,会自动变为单次定位,持续定位时不要使用
locationProtocol Number 设置网络请求的协议。可选HTTP或者HTTPS。默认为HTTP。1.http 2.https
sensorEnable Boolean 设置是否使用传感器。默认是false
wifiScan Boolean 设置是否开启wifi扫描。默认为true,如果设置为false会同时停止主动刷新,停止以后完全依赖于系统刷新,定位位置可能存在误差
locationCacheEnable Boolean 设置是否使用缓存定位,默认为true

iosOption

参数 类型 说明
desiredAccuracy Number 1.最适合导航用的定位 iOS4.0以后新增 2.精度最高的定位 3.定位精度在10米以内 4.定位精度在100米以内 5.定位精度在1000米以内 6.3000m以内
pausesLocationUpdatesAutomatically String 指定定位是否会被系统自动暂停。默认为NO。
allowsBackgroundLocationUpdates String 是否允许后台定位。默认为NO。
locationTimeout Number 指定单次定位超时时间,默认为10s。最小值是2s。
reGeocodeTimeout Number 指定单次定位逆地理超时时间,默认为5s。最小值是2s。
locatingWithReGeocode String 是否启用逆地址定位 默认YES
//调用实例
getCurrentPosition() {
    let obj={
      androidOption:{
        locationMode:1,//定位精度 1.精确定位 2.仅设备定位模式;3.低功耗定位模式
        gpsFirst:false,//设置是否gps优先,只在高精度模式下有效。默认关闭
        HttpTimeOut:30000,//设置网络请求超时时间。默认为30秒。在仅设备模式下无效
        interval:2000,//设置定位间隔。默认为2秒 连续定位有效
        needAddress:true,//设置是否返回逆地理地址信息。默认是true
        onceLocation:false,//设置是否单次定位。默认是false
        onceLocationLatest:false,//设置是否等待wifi刷新,默认为false.如果设置为true,会自动变为单次定位,持续定位时不要使用
        locationProtocol:1,// 设置网络请求的协议。可选HTTP或者HTTPS。默认为HTTP。1.http 2.https
        sensorEnable:false,//设置是否使用传感器。默认是false
        wifiScan:true,//设置是否开启wifi扫描。默认为true,如果设置为false会同时停止主动刷新,停止以后完全依赖于系统刷新,定位位置可能存在误差
        locationCacheEnable:true//设置是否使用缓存定位,默认为true
      },
      iosOption:{
        desiredAccuracy:4,// 1。最适合导航用的定位  iOS4.0以后新增 2.精度最高的定位 3.定位精度在10米以内定位精度在10米以内 4.定位精度在100米以内 5.定位精度在1000米以内 6.3000m
        pausesLocationUpdatesAutomatically:"YES",//指定定位是否会被系统自动暂停。默认为NO。
        allowsBackgroundLocationUpdates:"NO",//是否允许后台定位。默认为NO。只在iOS 9.0及之后起作用。设置为YES的时候必须保证 Background Modes 中的 Location updates 处于选中状态,否则会抛出异常。由于iOS系统限制,需要在定位未开始之前或定位停止之后,修改该属性的值才会有效果。
        locationTimeout:10, //指定单次定位超时时间,默认为10s。最小值是2s。注意单次定位请求前设置。注意: 单次定位超时时间从确定了定位权限(非kCLAuthorizationStatusNotDetermined状态)后开始计算
        reGeocodeTimeout:5, //指定单次定位逆地理超时时间,默认为5s。最小值是2s。注意单次定位请求前设置。
        locatingWithReGeocode:"YES" //是否 启用逆地址定位 默认YES
      }
    };
    (<any>window).GaoDe.getCurrentPosition( (res) => {
      console.log(JSON.stringify(res));
    }, () => {

    },obj);
  }

开启持续定位

startSerialLocation(successCallback,failedCallback,option);

参数 类型 说明
successCallback funtion 回调函数
failedCallback funtion 回调函数
option PositionOption 定位参数

androidOption

参数 类型 说明
locationMode Number 1.精确定位 2.仅设备定位模式;3.低功耗定位模式
gpsFirst Boolean 设置是否gps优先,只在高精度模式下有效。默认关闭
HttpTimeOut Number 设置网络请求超时时间。默认为30秒。在仅设备模式下无效
interval Number 设置定位间隔。默认为2秒 连续定位有效
needAddress Boolean 设置是否返回逆地理地址信息。默认是true
onceLocation Boolean 设置是否单次定位。默认是false
onceLocationLatest Boolean 设置是否等待wifi刷新,默认为false.如果设置为true,会自动变为单次定位,持续定位时不要使用
locationProtocol Number 设置网络请求的协议。可选HTTP或者HTTPS。默认为HTTP。1.http 2.https
sensorEnable Boolean 设置是否使用传感器。默认是false
wifiScan Boolean 设置是否开启wifi扫描。默认为true,如果设置为false会同时停止主动刷新,停止以后完全依赖于系统刷新,定位位置可能存在误差
locationCacheEnable Boolean 设置是否使用缓存定位,默认为true

iosOption

参数 类型 说明
pausesLocationUpdatesAutomatically String 指定定位是否会被系统自动暂停。默认为NO。
allowsBackgroundLocationUpdates String 是否允许后台定位。默认为NO。
locatingWithReGeocode String 是否启用逆地址定位 默认YES
startSerialLocation() {
    let obj={
      androidOption:{
        locationMode:1,
        gpsFirst:false,
        HttpTimeOut:30000,
        interval:2000,
        needAddress:true,
        onceLocation:false,
        onceLocationLatest:false,
        locationProtocol:1,
        sensorEnable:false,
        wifiScan:true,
        locationCacheEnable:true
      },
      iosOption:{
        pausesLocationUpdatesAutomatically:"YES",
        allowsBackgroundLocationUpdates:"NO",
        locatingWithReGeocode:"YES"
      }
    };
    (<any>window).GaoDe.startSerialLocation( (res) => {
      console.log(JSON.stringify(res));
    }, (e) => {

    },obj);
  }

停止持续定位

stopSerialLocation(successCallback,failedCallback);

参数 类型 说明
successCallback funtion 回调函数
failedCallback funtion 回调函数

5.返回值说明:

返回值字段 返回值类型 说明 android支持 ios支持
latitude string 获取纬度
longitude string 获取经度
accuracy string 获取精度信息
formattedAddress string 获取地址描述
country string 获取国家名称
province string 获取省名称
city string 获取城市名称
district string 获取城区名称
citycode string 获取城市编码信息
adcode string 获取区域编码信息
street string 获取街道名称
number string 街道门牌号信息
POIName string 获取当前位置的POI名称
AOIName string 获取当前位置所处AOI名称
altitude string 获取海拔高度信息 ×
speed string 单位:米/秒 ×
bearing string 获取方向角信息 ×
buildingId string 获取室内定位建筑物Id ×
floor string 获取室内定位楼层 ×
gpsAccuracyStatus string 获取GPS当前状态,返回值可参考AMapLocation类提供的常量 ×
locationType string 获取定位结果来源 ×
locationDetail string 定位信息描述 ×

6.Ionic4使用方法

ionic官网快捷链接

//ionic 4+ 
import {
  GaoDeLocation,
  PositionOptions,
  LocationModeEnum,
  LocationProtocolEnum,
  DesiredAccuracyEnum,
  PositionRes
} from "@awesome-cordova-plugins/gao-de-location/ngx";
...

@NgModule({
  ...

  providers: [
    ...
    GaoDeLocation
    ...
  ]
  ...
})
export class AppModule { }
// app.component.ts
// ionic 4+ 
import {
  GaoDeLocation,
  PositionOptions,
  LocationModeEnum,
  LocationProtocolEnum,
  DesiredAccuracyEnum,
  PositionRes
} from "@awesome-cordova-plugins/gao-de-location/ngx";

@Component({ ... })
export class xxxComponent {
  //注入
  constructor(private gaoDeLocation: GaoDeLocation) {}
  //调用定位
  async getCurrentPosition() {
      const positionOptions: PositionOptions = {
        androidOption: {
          locationMode: LocationModeEnum.Hight_Accuracy,
          gpsFirst: false,
          HttpTimeOut: 30000,
          interval: 2000,
          needAddress: true,
          onceLocation: false,
          onceLocationLatest: false,
          locationProtocol: LocationProtocolEnum.HTTP,
          sensorEnable: false,
          wifiScan: true,
          locationCacheEnable: true
        }, iosOption: {
          desiredAccuracy: DesiredAccuracyEnum.kCLLocationAccuracyBest,
          pausesLocationUpdatesAutomatically: 'YES',
          allowsBackgroundLocationUpdates: 'NO',
          locationTimeout: 10,
          reGeocodeTimeout: 5,
        }
      };
      const positionRes: PositionRes = await this.gaoDeLocation.getCurrentPosition(positionOptions).catch((e: any) => {
        console.log(e);
      }) || null;
      console.log(JSON.stringify(positionRes));
    }
  
    startSerialLocation() {
      const positionOptions: PositionOptions = {
        androidOption: {
          locationMode: LocationModeEnum.Hight_Accuracy,
          gpsFirst: false,
          HttpTimeOut: 30000,
          interval: 2000,
          needAddress: true,
          onceLocation: false,
          onceLocationLatest: false,
          locationProtocol: LocationProtocolEnum.HTTP,
          sensorEnable: false,
          wifiScan: true,
          locationCacheEnable: true
        }, iosOption: {
          desiredAccuracy: DesiredAccuracyEnum.kCLLocationAccuracyBest,
          pausesLocationUpdatesAutomatically: 'YES',
          allowsBackgroundLocationUpdates: 'NO',
          locationTimeout: 10,
          reGeocodeTimeout: 5,
        }
      };
      this.gaoDeLocation.startSerialLocation(positionOptions).subscribe((positionRes: PositionRes) => {
        console.log(JSON.stringify(positionRes));
      });
    }
  
    stopSerialLocation() {
      const positionRes: any = this.gaoDeLocation.stopSerialLocation().catch((e) => {
        console.log(e);
      }) || null;
      console.log(JSON.stringify(positionRes));
    }
}

7.联系我:

 QQ群: 390736068

8.问题汇总

V2.0.7版本

1.项目打包编译报错:(电容器无法解决,只能手动修改包名)

  ***/platforms/android/app/src/main/java/com/chenyu/GaoDeLocation/SerialLocation.java:17:
  错误: 程序包com.example.chenyu不存在 import com.example.chenyu.R;
                                                            ^
  ***/platforms/android/app/src/main/java/com/chenyu/GaoDeLocation/SerialLocation.java:236:
  错误: 程序包R不存在   .setSmallIcon(R.mipmap.ic_launcher)

  解决:修改当前报错文件17行,引入的文件名为本项目包名: import com.foton.***你的APP包名***.R;

cordova-plugin-gaodelocation-chenyu's People

Contributors

354110809 avatar umbrella22 avatar utsource avatar waliu avatar yangfan17 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

cordova-plugin-gaodelocation-chenyu's Issues

symbol(s) not found for architecture x86_64

描述错误
ionic5
cordova-ios 6.2.0
xcode13.4
mac 是2021款M1
ionic编译报错如下:
ld: warning: ignoring file **/Plugins/cordova-plugin-gaodelocation-chenyu/MAMapKit.framework/MAMapKit, building for iOS Simulator-x86_64 but attempting to link with file built for unknown-unsupported file format ( 0x76 0x65 0x72 0x73 0x69 0x6F 0x6E 0x20 0x68 0x74 0x74 0x70 0x73 0x3A 0x2F 0x2F )
Undefined symbols for architecture x86_64:
"_MAMetersBetweenMapPoints", referenced from:
-[MASmoothPathTool calculateDistanceFromPoint:lineBegin:lineEnd:] in MASmoothPathTool-8b8e4602f44f00faaefc348eeeb2ae95.o
"_MAMapPointForCoordinate", referenced from:
-[MASmoothPathTool reducerVerticalThreshold:threshHold:] in MASmoothPathTool-8b8e4602f44f00faaefc348eeeb2ae95.o
-[MASmoothPathTool reduceNoisePoint:threshHold:] in MASmoothPathTool-8b8e4602f44f00faaefc348eeeb2ae95.o
ld: symbol(s) not found for architecture x86_64

插件版本(请填写以下信息):

-ios平台(cordova-ios):[6.2.0]

-cordova插件版本[11.0.0]

解决思路:
根据错误提示,知道是MASmoothPathTool文件的问题,通过跟插件作者的沟通了解到这个文件实际上没有用到,就把这个文件删除。

解决方案:
删除文件:文件路径:cordova-plugin-gaodelocation-chenyu/src/ios/,MASmoothPathTool.h,MASmoothPathTool.m,共两个文件。同时还要删除相关引用,具体如下:
1、cordova-plugin-gaodelocation-chenyu/plugin.xml文件中第96,97行代码删除,具体代码如下 :

2、cordova-plugin-gaodelocation-chenyu/src/ios/GaoDeLocation.m文件中第5行删除,具体代码如下:
#import "MASmoothPathTool.h"
同时删除59~65行:
-(void)pathOptimize{
MASmoothPathTool *tool = [[MASmoothPathTool alloc] init];
tool.intensity = 3;
tool.threshHold = 0.3;
tool.noiseThreshhold = 10;
// self.smoothedTracePoints = [tool pathOptimize:self.origTracePoints];
}

完成上面操作还报错:
ld: symbol(s) not found for architecture x86_64

这个问题是xcode12之后引发的问题,解决方案如下 :
Excluded Architecture ,添加 Any iOS Simulator SDK,value填入 arm64
如图:
image

插件是否支持 Capacitor ?

描述错误

我尝试使用 Capacitor 为 Android 应用打包,过程中出现如下错误:

[capacitor]         69 actionable tasks: 58 executed, 11 up-to-date
[capacitor]         /Volumes/Data/Develop/Ionic/where-now/android/capacitor-cordova-android-plugins/src/main/java/com/chenyu/GaoDeLocation/SerialLocation.java:17: error: package com.example.chenyu does not exist
[capacitor]         import com.example.chenyu.R;
[capacitor]         ^
[capacitor]         /Volumes/Data/Develop/Ionic/where-now/android/capacitor-cordova-android-plugins/src/main/java/com/chenyu/GaoDeLocation/SerialLocation.java:236: error: package R does not exist
[capacitor]         .setSmallIcon(R.mipmap.ic_launcher)
[capacitor]         ^
[capacitor]         Note: /Volumes/Data/Develop/Ionic/where-now/android/capacitor-cordova-android-plugins/src/main/java/com/chenyu/GaoDeLocation/SerialLocation.java uses or overrides a deprecated API.
[capacitor]         Note: Recompile with -Xlint:deprecation for details.
[capacitor]         2 errors
[capacitor]         
[capacitor]         FAILURE: Build failed with an exception.
[capacitor]         
[capacitor]         * What went wrong:
[capacitor]         Execution failed for task ':capacitor-cordova-android-plugins:compileDebugJavaWithJavac'.
[capacitor]         > Compilation failed; see the compiler error output for details.

重现bug

再现行为的步骤:

预期行为

对你期望发生的事情的清晰而简明的描述。

插件版本(请填写以下信息):

Ionic 小白,不知道啥版本。。。最近刚下载的应该是最新版吧…… Ionic 6.

智能手机(请填写以下信息):

-设备:小米

-操作系统:MIUI

-版本 12

附加上下文

希望开发大大能帮忙看一下哪错了,谢谢!

如果不支持 Capacitor 的话能不能考虑支持一下…… React 开发貌似必须用 Capacitor :-(

关于连续定位问题

首先恭喜作者本插件被ionic官方收录,期待作者可以吧连续定位功能添加进去

ionic5 定位失败

仅返回 {“status”:"定位失败"}
插件版本:
"cordova-plugin-gaodelocation-chenyu":"^2.0.4"

Ionic:

Ionic CLI : 5.4.16
Ionic Framework : @ionic/angular 5.0.7
@angular-devkit/build-angular : 0.803.25
@angular-devkit/schematics : 8.3.25
@angular/cli : 8.3.25
@ionic/angular-toolkit : 2.2.0

Cordova:

Cordova CLI : 9.0.0 ([email protected])
Cordova Platforms : android 8.1.0
Cordova Plugins : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.1.3, (and 11 other plugins)

Utility:

cordova-res : not installed
native-run : not installed

System:

(D:\Android\android-sdk).2.5
NodeJS : v12.16.1 (D:\Program Files\nodejs\node.exe)
npm : 6.13.4
OS : Windows 10

Android定位出来的地址和经纬度偏差太大

环境:

  1. android 8.1.0
  2. ionic 4.11.2
    定位结果:
    `
    {
    accuracy: 30
    adcode: "310112"
    address: "上海市闵行区万里路3482号靠近上海市科技创业中心闵行基地"
    backtime: 1579426511878
    bearing: 0
    city: "上海市"
    citycode: "021"
    country: "**"
    district: "闵行区"
    latitude: 31.078707
    longitude: 121.523285
    poi: "上海市科技创业中心闵行基地"
    province: "上海市"
    satellites: 0
    status: "定位成功"
    time: 1579426512784
    type: 5

}
`
其中address和经纬度偏差特别大。。请问是咋回事

欢迎ios单次定位报错需要开background mode

首先感谢作者为我们提供这个定位插件。
我在ionic中只用this.gaoDeLocation.getCurrentPosition这个方法定位,因苹果应用商店审核不允许使用background modes中的location updates,因为我没有后台持续都定位的使用场景。
到该页面时,就闪退,模拟机上提示的异常信息是让我开后台location updates.

总之,勾选了这个location updates就正常,不勾选就闪退。

但是勾选了的话,通不过苹果的审核。

this.gaoDeLocation.getCurrentPosition光这个方法,似乎也不需要后台模式。

请问作者,是不是该插件默认需要开启后台模式?哪里能设置关闭吗?谢谢。

返回的坐标系转为GPS

我发觉高德拿到的位置信息不准,因此把插件的返回坐标转为gps坐标,拿到后用百度的js api逆编码,高德坐标系转gps坐标系的方法如下
//圆周率 GCJ_02_To_WGS_84
double PI = 3.14159265358979324;
/**
* @author 作者:
* 方法描述:方法可以将高德地图SDK获取到的GPS经纬度转换为真实的经纬度,可以用于解决安卓系统使用高德SDK获取经纬度的转换问题。
* @param 需要转换的经纬度
* @return 转换为真实GPS坐标后的经纬度
* @throws <异常类型> {@inheritdoc} 异常描述
*/
public HashMap<String, Double> delta(double lat,double lon) {
double a = 6378245.0;//克拉索夫斯基椭球参数长半轴a
double ee = 0.00669342162296594323;//克拉索夫斯基椭球参数第一偏心率平方
double dLat = this.transformLat(lon - 105.0, lat - 35.0);
double dLon = this.transformLon(lon - 105.0, lat - 35.0);
double radLat = lat / 180.0 * this.PI;
double magic = Math.sin(radLat);
magic = 1 - ee * magic * magic;
double sqrtMagic = Math.sqrt(magic);
dLat = (dLat * 180.0) / ((a * (1 - ee)) / (magic * sqrtMagic) * this.PI);
dLon = (dLon * 180.0) / (a / sqrtMagic * Math.cos(radLat) * this.PI);

    HashMap<String, Double> hm = new HashMap<String, Double>();
    hm.put("lat",lat - dLat);
    hm.put("lon",lon - dLon);

    return hm;
}
//转换经度
public double transformLon(double x, double y) {
    double ret = 300.0 + x + 2.0 * y + 0.1 * x * x + 0.1 * x * y + 0.1 * Math.sqrt(Math.abs(x));
    ret += (20.0 * Math.sin(6.0 * x * this.PI) + 20.0 * Math.sin(2.0 * x * this.PI)) * 2.0 / 3.0;
    ret += (20.0 * Math.sin(x * this.PI) + 40.0 * Math.sin(x / 3.0 * this.PI)) * 2.0 / 3.0;
    ret += (150.0 * Math.sin(x / 12.0 * this.PI) + 300.0 * Math.sin(x / 30.0 * this.PI)) * 2.0 / 3.0;
    return ret;
}
//转换纬度
public double transformLat(double x, double y) {
    double ret = -100.0 + 2.0 * x + 3.0 * y + 0.2 * y * y + 0.1 * x * y + 0.2 * Math.sqrt(Math.abs(x));
    ret += (20.0 * Math.sin(6.0 * x * this.PI) + 20.0 * Math.sin(2.0 * x * this.PI)) * 2.0 / 3.0;
    ret += (20.0 * Math.sin(y * this.PI) + 40.0 * Math.sin(y / 3.0 * this.PI)) * 2.0 / 3.0;
    ret += (160.0 * Math.sin(y / 12.0 * this.PI) + 320 * Math.sin(y * this.PI / 30.0)) * 2.0 / 3.0;
    return ret;
}

fork之后, cordova plugin add + 修改后的git地址, 报错问题

你好,GaoDeLocation.java中getDefaultOption方法中的一些参数设置,我做了调整,为了方便,我fork了一份,并且修改了packpackage.json中的url指向
使用 cordova plugin add + 修改后的git地址, 报错:
Probably this is either a connection problem, or plugin spec is incorrect.
Check your connection and plugin name/version/URL.
连接应该没有问题, 还是说除了修改packpackage.json中URL, 还要修改别的地方...?

使用ionic

描述错误

对错误的清晰而简洁的描述。

重现bug

再现行为的步骤:

预期行为

对你期望发生的事情的清晰而简明的描述。

插件版本(请填写以下信息):

-android平台(cordova-android):[例如7.0.0]

-ios平台(cordova-ios):[例如4.5.0]

-cordova插件版本[例如2.0.0]

智能手机(请填写以下信息):

-设备:[例如iPhone6]

-操作系统:[例如iOS8.1]

-版本[例如22]

附加上下文

在此处添加有关此问题的任何其他上下文。

安卓 定位失败 收到 code 200

安卓平台
在安卓手机上,我发现几乎无法收到 code 为 500 的错误信息,查看高德文档,使用的是 getErrorCode() == 0 判断的是否定位成功.
建议将 GaoDeLocation.java 239行的 代码更改为

  if (null != location && location.getErrorCode() == 0) {

self.IOS_API_KEY 获取不到值

self.IOS_API_KEY = [[self.commandDelegate settings] objectForKey:@"ios_api_key"];
[AMapServices sharedServices].apiKey =self.IOS_API_KEY;
// 带逆地理信息的一次定位(返回坐标和地址信息)
[self configLocationManager];

self.IOS_API_KEY 获取不到值

将GaoDeLocation放到module.ts里面的provider里面的时候报错

将GaoDeLocation放到module.ts里面的provider里面的时候一直报这个错:
不能将类型“GaoDeLocationOriginal”分配给类型“Provider”。
Type 'GaoDeLocationOriginal' is missing the following properties from type 'FactoryProvider': provide,
useFactory [2322]

安装该插件2.0.5后安卓包不能打包成功

描述错误
:CordovaLib:transformClassesAndResourcesWithPrepareIntermediateJarsForRelease
:app:processReleaseResources
:app:generateReleaseSources
:app:javaPreCompileRelease
:app:compileReleaseJavaWithJavac/Users/xufeng/project/position/DL-APP/platforms/android/app/src/main/java/com/chenyu/GaoDeLocation/SerialLocation.java:236: 错误: 找不到符号
.setSmallIcon(R.mipmap.ic_launcher)
对错误的清晰而简洁的描述。
不能打包Android包
重现bug
安装该插件2.0.5后不能打包安卓包
再现行为的步骤:

预期行为

对你期望发生的事情的清晰而简明的描述。

希望打包Android成功
插件版本(请填写以下信息):

-android平台(cordova-android):[例如7.0.0]
"cordova-android": "^7.1.4" ionic3
-ios平台(cordova-ios):[例如4.5.0]

-cordova插件版本[例如2.0.0]
cordova v8.1.0
智能手机(请填写以下信息):

-设备:[例如iPhone6]

-操作系统:[例如iOS8.1]

-版本[例如22]

附加上下文

在此处添加有关此问题的任何其他上下文。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.