繁体   English   中英

错误尝试调用虚拟方法'android.location.Location

[英]error Attempt to invoke virtual method 'android.location.Location

我正在使用MobileFirst提供的WL.Device.Geo.acquirePosition(onGeoLocationSuccess,onGeoLocationFailure,选项)来检索设备的位置。

第一次很好。 我得到了位置,一切都很好。

但是,在应用程序中的某个位置,我清除了localStorage。 当我这样做时,该应用程序会发疯,并且我在控制台中不断收到此错误:

getPosition - error Attempt to invoke virtual method 'android.location.Location com.worklight.androidgap.plugin.WLGPSListener.getLastKnownLocation()' on a null object reference

这是我的代码的样子:

position();

function position() {

  var options = {
    enableHighAccuracy : false,
    timeout            : 20000,
    maximumAge         : 30000,
    highAccuracyOptions: {
      desiredAccuracy: 50, //meters
      iOSBestAccuracy: WL.Device.Geo.IOS_BEST_ACCURACY
    }
  };

  WL.Device.Geo.acquirePosition(onGeoLocationSuccess, onGeoLocationFailure, options);
}

function onGeoLocationSuccess(position) {
  WL.Logger.info('Got position now ;)');
}

function onGeoLocationFailure(errorObj) {
  console.log('Trying again ');
  position();
}

这就是我在另一个服务中重置localStorage的方式

localStorage.clear();

有什么建议么?

检查 localStorage 的内容 由于您正在强制清除整个存储,因此我怀疑您是在应用程序运行时清除所需的数据。

仅清除需要清除的内容,而不是全部清除。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM