Android中sendMessageAtTime()的用法

简介: Android中sendMessageAtTime()的用法

sendMessageDelay()大家都明白,说是延时多少才发送。而sendMessageAtTime()意思也明白,那么怎么用呢?这里的关键,在于怎么取时间。正确做法是:


long mLastDisplayTime = 0;
    @Override
    protected void onNewIntent(Intent intent)
    {
        String text = intent.getStringExtra("message");
        Message msg = mHandler.obtainMessage(MESSAGE_NEW_ARRIVED, text);
        # 正确取时间的代码。
        long current = SystemClock.uptimeMillis();
        if (mLastDisplayTime == 0)
        {
            mLastDisplayTime = current;
        }
        else
        {
            if (current > mLastDisplayTime+2000)
            {
                mLastDisplayTime = current;
            }
            else
            {
                mLastDisplayTime += 5000;
            }
        }
        mHandler.sendMessageAtTime(msg, mLastDisplayTime);
    }

 从上述代码中可以看到,关键在于取时间的代码:SystemClock.uptimeMillis()

目录
相关文章
|
3月前
|
编解码 前端开发 Android开发
Android经典实战之TextureView原理和高级用法
本文介绍了 `TextureView` 的原理和特点,包括其硬件加速渲染的优势及与其他视图叠加使用的灵活性,并提供了视频播放和自定义绘制的示例代码。通过合理管理生命周期和资源,`TextureView` 可实现高效流畅的图形和视频渲染。
251 12
|
5月前
|
Android开发 Kotlin
Android经典面试题之Kotlin中Lambda表达式有哪些用法
Kotlin的Lambda表达式是匿名函数的简洁形式,常用于集合操作和高阶函数。基本语法是`{参数 -> 表达式}`。例如,`{a, b -> a + b}`是一个加法lambda。它们可在`map`、`filter`等函数中使用,也可作为参数传递。单参数时可使用`it`关键字,如`list.map { it * 2 }`。类型推断简化了类型声明。
29 0
|
7月前
|
定位技术 Android开发
Intent在Android中的几种用法
Intent在Android中的几种用法
80 1
|
7月前
|
Java Android开发 数据安全/隐私保护
安卓逆向 -- IDA基本用法
安卓逆向 -- IDA基本用法
97 0
|
Android开发
Android 星级评分条的基本用法
Android 星级评分条的基本用法
132 2
|
Android开发
Android 中CheckBox复选框按钮的基本用法
Android 中CheckBox复选框按钮的基本用法
155 0
Android 中CheckBox复选框按钮的基本用法
|
Android开发
Android studio中的调试(Debug)按钮具体用法
Android studio中的调试(Debug)按钮具体用法
174 0
|
存储 Android开发
Android startActivityForResult和onActivityResult的基本用法
Android startActivityForResult和onActivityResult的基本用法
114 0
|
Android开发
Android 动画之Gif动画的用法(适用于Android9.0以上和以下)
Android 动画之Gif动画的用法(适用于Android9.0以上和以下)
141 0
|
XML Android开发 数据格式
Android 动画之帧动画(也叫图片动画)的用法
Android 动画之帧动画(也叫图片动画)的用法
179 0