手机重启后,适用于Android的Ionic App崩溃,然后cordova-plugin-stepcounter不再起作用

时间:2018-12-29 19:51:22

标签: typescript cordova ionic-framework ionic-native pedometer

我目前正在为Android和iOS实施离子应用程序,并具有计算步数的功能。为此,我使用了Cordova的本地api:cordova-plugin-stepcounter。

当我在Samsung S9上安装该应用程序时,该步骤将在该应用程序首次启动后计算在内。我可以关闭该应用程序,并且仍然会计算步骤。一切运行平稳,直到重新启动使应用程序崩溃为止。重新启动手机后,应用程序崩溃且不再计算任何步骤。步骤的值与电话重启之前的值相同。重新启动后,将不再计算步骤。

不幸的是,运行方法“ start(startingOffset)”以使步数计数器再次运行是不够的。

为了使Stepcounter再次起作用,您必须卸载并重新安装该应用程序。

谢谢您的建议。

import { Component } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { StatusBar } from '@ionic-native/status-bar';
import { Stepcounter } from '@ionic-native/stepcounter';

@IonicPage()
@Component({
selector: 'page-tab1',
templateUrl: 'tab1.html'
})
export class Tab1Page {

anzahl: any;
dailysteps: any;
startingOffset: any;

error: any;

constructor(public navCtrl: NavController, public navParams: NavParams, public statusBar: StatusBar, private stepcounter: Stepcounter) {
    this.dailysteps = this.fetchDailySteps();
}


startStepcounter(){
    this.stepcounter.start(this.startingOffset).then((startingOffset) => {
    this.anzahl = startingOffset;
    }).catch((error) => {
    alert(error);
    });
}

fetchDailySteps(){
    this.stepcounter.getTodayStepCount().then((schritte) => {
    this.dailysteps = schritte;
    }).catch((error) => {
    this.error = 'Error Tagesschritte: ' + error;
    alert(error);
    });
}



ionViewDidLoad() {
    this.startStepcounter();
}


}

0 个答案:

没有答案