【问题标题】:Get additional geolocation data (GnssStatus) in NativeScript application在 NativeScript 应用程序中获取额外的地理位置数据 (GnssStatus)
【发布时间】:2020-01-27 23:02:35
【问题描述】:

在我的 NativeScript 应用程序中,我需要获取 nativescript-geolocation 插件未提供的其他地理位置信息,例如 satellite count 或 satellite ids。

我正在尝试在 NativeScript 应用程序中使用来自 android.location 的 GnssStatus 类:

const gnssCb = new android.location.GnssStatus.Callback();

之后我得到一个错误:

ERROR Error: JNI Exception occurred (SIGABRT)

我做错了什么? 或者有什么其他方法可以让我获取这些信息?

【问题讨论】:

  • 我猜你错过了 onSatelliteStatusChanged 方法的实现,尝试添加它。
  • @Manoj 如果你能提供一个代码 sn-p 如何在 NativeScript 中做到这一点,那就太好了
  • 试试new android.location.GnssStatus.Callback({onSatelliteStatusChanged: function(status){}});
  • 感谢这个 sn-p :)。不幸的是,它对我不起作用:cannot marshal javascript argument object object at index 0 to java type

标签: geolocation nativescript android-gnss


【解决方案1】:

android.location.GnssStatus.Callback 是继承自 Object 的类,因此您可能必须扩展它以覆盖方法。我用 Playground 测试了下面的代码,它按预期执行。

class MyGnssStatus extends android.location.GnssStatus.Callback {
    constructor() {
      super();
      return global.__native(this);
    }

    onSatelliteStatusChanged(status) {

    }
  }

【讨论】:

  • 看起来不错。感谢您的回答!还没有测试它。很快就会回到这个任务,在这里留下反馈。
猜你喜欢
  • 2017-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多