Ionic 离子应用程序:当离子应用程序启动并运行时,保持屏幕解锁并打开

qmelpv7a  于 2023-02-20  发布在  Ionic
关注(0)|答案(2)|浏览(187)

我正在用Ionic框架开发一个导航应用,有没有办法在应用启动运行的时候让设备屏幕一直开着?

0ve6wy6x

0ve6wy6x1#

是,您可以保持屏幕活动:有一个cordova插件用于此:
离子 cordova 插件添加 cordova 插件失眠
npm安装@离子本机/失眠

import { Insomnia } from '@ionic-native/insomnia/ngx';

constructor(private insomnia: Insomnia) { }

...

this.insomnia.keepAwake()
  .then(
    () => console.log('success'),
    () => console.log('error')
  );

this.insomnia.allowSleepAgain()
  .then(
    () => console.log('success'),
    () => console.log('error')
  )

在此处检查插件文档Cordova Insomnia Docs

hwazgwia

hwazgwia2#

Najam Us Saqib的答案是正确的,但有一些小的更正。更正以上答案:IONIC本机包不再存在。我们需要使用Awesome-Cordova-plugins包。

npm install @awesome-cordova-plugins/insomnia

代码的一个稍微修改的版本是

import { Insomnia } from '@awesome-cordova-plugins/insomnia/ngx';

export class MyComponent implements OnInit, OnDestroy {

    constructor(private insomnia: Insomnia) {
        this.insomnia.keepAwake()
            .then(
                () => console.log('success'),
                () => console.log('error')
            );
    }

    ngOnDestroy() {
        ...
        this.insomnia.allowSleepAgain()
          .then(
            () => console.log('success'),
            () => console.log('error')
          );
        ...
    }

}

只要此组件在堆栈中,上述代码就会使应用保持唤醒状态。一旦组件被销毁,应用将允许设备再次休眠。

相关问题