我想将GitHub上可用的Cordova插件添加到我的IONIC 5+电容器(角度)项目中。

另外,我不知道如何安装和集成此插件,因为official manual表示在步骤之后
npm install https://github.com/DigitalsunrayMedia/cordova-plugin-stepcounter

npm install ionic-native/???????

我的问题就在这里!我应该如何使用npm install ionic-native/????????输入?所需的插件不作为Ionic Native插件存在。

如果我只需执行以下命令就足够了:

npm install https://github.com/DigitalsunrayMedia/cordova-plugin-stepcounter.git
npx cap sync

没有npm install ionic-native/????的步骤

我还想知道是否可以在Ionic Capacitor中轻松添加和使用它,或者是否必须在文件中进行更改。

如何在Typescript中解决此插件?我是否必须向module.app添加任何内容?

如果按照电容器规定的方式进行,是否足够?
import { Plugins } from '@capacitor/core';
const { Stepcounter } = Plugins;

我非常感谢您的任何建议!谢谢你 :)
最好的祝福,
程序员

最佳答案

是的,您可以安装插件并在没有ionic-native的情况下使用它,基本上ionic-native只是类型库的包装器。

最简单的方法是实施服务

import { Injectable } from '@angular/core';

declare var stepcounter: any;

@Injectable({
    providedIn: 'root'
})
export class StepCounterService {
    constructor() {}

    start(startingOffset) {
        return new Promise((resolve, reject) => {
            stepcounter.start(
                startingOffset,
                message => {
                    resolve(message);
                },
                () => {
                    reject();
                }
            );
        });
    }

    stop() {
        return new Promise((resolve, reject) => {
            stepcounter.stop(
                message => {
                    resolve(message);
                },
                () => {
                    reject();
                }
            );
        });
    }

    getTodayStepCount() {
        return new Promise((resolve, reject) => {
            stepcounter.getTodayStepCount(
                message => {
                    resolve(message);
                },
                () => {
                    reject();
                }
            );
        });
    }

    getStepCount() {
        return new Promise((resolve, reject) => {
            stepcounter.getStepCount(
                message => {
                    resolve(message);
                },
                () => {
                    reject();
                }
            );
        });
    }

    deviceCanCountSteps() {
        return new Promise((resolve, reject) => {
            stepcounter.deviceCanCountSteps(
                message => {
                    resolve(message);
                },
                () => {
                    reject();
                }
            );
        });
    }

    getHistory() {
        return new Promise((resolve, reject) => {
            stepcounter.getHistory(
                message => {
                    resolve(message);
                },
                () => {
                    reject();
                }
            );
        });
    }
}


现在您将其注入所需的位置,以便可以使用它

PS。我假设您使用的是angular和Typescript,如果您使用的是vanical ionic和javascript,则可以安装插件并使用它

关于cordova - IONIC 4+电容器:如何在没有 ionic native 的情况下从github安装Cordova插件(Stepcounter)?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58828456/

10-14 15:58