IONIC 4+ Capacitor:如何在没有 ionic native 的情况下从 github 安装 cordova 插件(Stepcounter)?
IONIC 4+ Capacitor: How to install a cordova plugin (Stepcounter) from github without ionic native?
我想将 GitHub 上可用的 Cordova 插件添加到我的 IONIC 5+ Capacitor (Angular) 项目中。
另外,我不知道如何安装和集成这个插件,因为official manual说在步骤之后
npm install https://github.com/DigitalsunrayMedia/cordova-plugin-stepcounter
还
npm install ionic-native/???????
我的问题就在这里! npm install ionic-native/????????
enter 应该怎么办?所需的插件不作为 Ionic Native 插件存在。
是否足够,如果我简单地执行以下命令:
npm install https://github.com/DigitalsunrayMedia/cordova-plugin-stepcounter.git
npx cap sync
没有npm install ionic-native/????
的步骤
我还想知道我是否可以轻松地在离子电容器中添加和使用它,或者我是否必须在文件中进行更改。
如何在 Typescript 中处理这个插件?我必须向 module.app 添加任何内容吗?
如果我按照 Capacitor 规定的方式进行操作是否足够:
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 和打字稿,如果你使用的是 vanilla ionic 和 javascript 你可以安装插件并使用它
我想将 GitHub 上可用的 Cordova 插件添加到我的 IONIC 5+ Capacitor (Angular) 项目中。
另外,我不知道如何安装和集成这个插件,因为official manual说在步骤之后
npm install https://github.com/DigitalsunrayMedia/cordova-plugin-stepcounter
还
npm install ionic-native/???????
我的问题就在这里! npm install ionic-native/????????
enter 应该怎么办?所需的插件不作为 Ionic Native 插件存在。
是否足够,如果我简单地执行以下命令:
npm install https://github.com/DigitalsunrayMedia/cordova-plugin-stepcounter.git
npx cap sync
没有npm install ionic-native/????
我还想知道我是否可以轻松地在离子电容器中添加和使用它,或者我是否必须在文件中进行更改。
如何在 Typescript 中处理这个插件?我必须向 module.app 添加任何内容吗?
如果我按照 Capacitor 规定的方式进行操作是否足够:
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 和打字稿,如果你使用的是 vanilla ionic 和 javascript 你可以安装插件并使用它