本篇有用到混合开发,我不懂原生,粗略带过。。。
本篇使用java作为Android语言,不是Flutter官方的Kotlin

这里写目录标题

  • Dart部分
  • Android部分

Dart部分

  1. 创建MethodChannel与Andorid平台建立通信(频道名称可以自定义,但是要与android对应)

    /// 创建频道
    static const platform = const MethodChannel('samples.flutter.dev/test');
    
  2. 使用MethodChannel发出任务
    Future<void> _test() async {
    // 十秒后执行任务,因为我是使用button触发,所以要时间手动关闭屏幕Timer(Duration(seconds: 10),() async {// 发送频道测试方法await platform.invokeMethod<String>('test');},);
    }
    

Android部分

  1. 使用android studio以安卓方式打开项目的android目录,等待加载完成

    gradle默认使用jcenter仓库下载,如果加载缓慢可以先切换为淘宝镜像
    android studio打开项目Gradle Download:https://jcenter加载慢

  2. 添加权限
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
    
  3. 编码(别忘了开始加上你的包名)
    import android.os.PowerManager;
    import androidx.annotation.NonNull;
    import io.flutter.embedding.android.FlutterActivity;
    import io.flutter.embedding.engine.FlutterEngine;
    import io.flutter.plugin.common.MethodChannel;public class MainActivity extends FlutterActivity {// 定义频道名称private static final String CHANNEL = "samples.flutter.dev/test";@Overridepublic void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {super.configureFlutterEngine(flutterEngine);new MethodChannel(flutterEngine.getDartExecutor().getBinaryMessenger(), CHANNEL).setMethodCallHandler((call, result) -> {PowerManager powerManager = (PowerManager) this.getSystemService(POWER_SERVICE);PowerManager.WakeLock wakeLock = powerManager.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP , "test:tag");wakeLock.acquire(60*1000L);result.success("success");});}
    }
    

Flutter唤醒屏幕(Android)相关推荐

  1. android 触摸 唤醒屏幕,Android中屏幕保持唤醒

    1.锁的类型 PowerManager中各种锁的类型对CPU .屏幕.键盘的影响: PARTIAL_WAKE_LOCK : 保持CPU 运转,屏幕和键盘灯有可能是关闭的. SCREEN_DIM_WAK ...

  2. android休眠唤醒屏幕,Android屏幕的休眠和唤醒

    目的:实现屏幕的休眠和唤醒. 实现:点击按钮,屏幕进入休眠,4秒后屏幕自动唤醒. 注意:需要系统签名(本文是在没有源码的情况下,使用platform.pk8.platform.x509.pem.sig ...

  3. android 触摸 唤醒屏幕,android 唤醒和解锁屏幕

    /** * 唤醒手机屏幕并解锁 */ public void wakeUpAndUnlock() { // 获取电源管理器对象 PowerManager pm = (PowerManager) get ...

  4. android adb命令唤醒屏幕,Android adb命令点亮屏幕说明

    前言         欢迎大家我分享和推荐好用的代码段~~声明         欢迎转载,但请保留文章原始出处: CSDN:http://www.csdn.net 雨季o莫忧离:http://blog ...

  5. android 触摸 唤醒屏幕,android 怎么通过触摸屏幕来唤醒屏幕。

    1.写入如下Java语言: [java] view plaincopy public static void wakeUpAndUnlock(Context context){ KeyguardMan ...

  6. android唤醒屏幕并解锁

    在开发程序的时候,有时会有唤醒屏幕并解锁屏幕的需求. 这个demo的作用是在进入主界面后30秒唤醒屏幕并解锁,仅供演示唤醒屏幕功能. 首先加入以下两个权限: <uses-permission a ...

  7. Android唤醒屏幕

    Android唤醒屏幕 大家在开发中遇到要唤醒屏幕的时候,一般都想到用WalkLock.WalkLock真的能点亮屏幕吗?答案是肯定的. 可是有时候为什么不点亮屏幕,这个就是参数设置的问题了. Pow ...

  8. android部分代码片段(例:判断设备为手机,获取mac地址,软键盘,唤醒屏幕等)

    部分代码片段: 1.唤醒屏幕并解锁 public static void wakeUpAndUnlock(Context context){ KeyguardManager km= (Keyguard ...

  9. Android 屏幕唤醒 + 屏幕解锁 + 开机广播android.intent.action.BOOT_COMPLETED

    Android 屏幕唤醒 + 屏幕解锁 + 开机广播android.intent.action.BOOT_COMPLETED 1.内容说明 Android手机开机后,会发送android.intent ...

最新文章

  1. document.readystate
  2. JVM内存模型、Java内存模型 和 Java对象模型
  3. Discuz!6.1.0 用户密码如何加密的?
  4. 计算机会计综合作业,20年7月东财《通用财务软件X》综合作业(100分)
  5. [转载]智能科普:VR、AR、MR的区别
  6. Spring AOP两种实现机制是什么?
  7. String s = new String(123) 究竟创建了几个对象
  8. Linux IPC实践(2) --匿名PIPE
  9. CNKI学术趋势与万方数据的知识脉络
  10. Elasticsearch 5.x 字段折叠的使用
  11. python的列表函数
  12. Mac Appium 安装
  13. 小米电视3s测试软件,小米盒子3s开箱评测 三大装机必备软件可看凤凰卫视
  14. 来了!微信小程序五款最受欢迎的UI框架解读
  15. Linux 克隆硬盘方法 —— 筑梦之路
  16. ubuntu下gstreamer解码器
  17. PIXI入门-PIXI文档翻译(1)
  18. Arch Linux 硬盘引导-联网安装
  19. 华为路由器时间同步_好用实在价格亲民 - 华为路由WS5200四核版初体验
  20. java bsdiff_Android差分包生成和合成新包-bsdiff

热门文章

  1. 摄像头网络直播方案LiveGBS部署问题
  2. javascript 快速获取图片实际大小的宽高
  3. Sophos防火墙v18版本访问内部服务器或者电脑SNAT地址转换的问题解决办法
  4. 动态网页和静态网页的差异
  5. Retrofit+Recycleview+fresco
  6. Linux 编译Aria2c最新版本
  7. 【朝花夕拾】Android自定义View篇之(六)Android事件分发机制(中)从源码分析事件分发逻辑及经常遇到的一些“诡异”现象
  8. 京浜光电IPO被终止:曾拟募资7.1亿 实控人已改为日本籍
  9. 为什么要阅读——兼分享《首先,打破一切常规》[中译文]:世界顶级管理者的成功秘诀/(美)马库斯·白金汉,(美)柯特·科夫曼 著
  10. Server returns invalid timezone. Go to ‘Advanced‘ tab and set ‘serverTimezon‘ 错误