https://blog.csdn.net/yizhi_007/article/details/99550313

继上篇博文拓展。

现在开发 环境:

ionic 4 + cordova 9 + angular8 + ant design for angular;

正文

基于 angular 使用第三方库 的原理

https://angular.cn/guide/using-libraries

下面两种方法均可使用。

方法一: angular 集成 jQuery ,使用jquery 以js 方式调用 cordova 插件。

方法二:angular  把某个库添加到运行时的全局范围中 (Adding a library to the runtime global scope)取自 具体参考文中两个链接 https://angular.cn/guide/using-libraries

      其中监听 类  像battery status 插件 使用rxjs的formEvent 实现;

     其他 ,注意 不同插件 ,使用本方式 略有区别 比如device 需要小写才能使用。

参考:https://blog.csdn.net/Ariel_201311/article/details/90402640

如果使用了 ionic 调用插件会相对容易些,部分可能有点小问题。

部分代码如下:

declare var QRScanner: any ;
declare var device: any;
getBattery() {
        try {
            fromEvent(window, 'batterystatus').subscribe(status => {
                alert(JSON.stringify(status)+ 'getBatteryStatus  info');
            });
        } catch (e) {
            alert(JSON.stringify(e)+ 'getBatteryStatus  error');
        }
    }

    getDevice() {
        try {
           alert(JSON.stringify(device.uuid)+ 'getDevice  info');
        } catch (e) {
           alert(JSON.stringify(device)+ 'getDevice  error');
            alert(JSON.stringify(e)+ 'getDevice  error');
        }
    }

QRScanner 没有测试成功 可能时调用的方式有问题,没去细研究,有别的要忙,可以证明这种方式是可行的。

成功 device 与 battery status 两个测试通过。

Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐