【实例简介】

【实例截图】

【核心代码】

package com.pf.testalarm;

import android.os.Handler;

import android.os.Message;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.text.TextUtils;

import android.view.View;

import android.widget.Button;

import android.widget.CheckBox;

import android.widget.EditText;

import android.widget.Toast;

import java.lang.ref.SoftReference;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

private EditText etNumber;

private CheckBox cbIsloop;

private Button btnClock;

private Button btnCancleClock;

private static SoftReference handlerSoftReference;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

etNumber = findViewById(R.id.et_number);

cbIsloop = findViewById(R.id.cb_isloop);

btnClock = findViewById(R.id.btn_clock);

btnCancleClock = findViewById(R.id.btn_cancle_clock);

btnClock.setOnClickListener(this);

btnCancleClock.setOnClickListener(this);

handlerSoftReference = new SoftReference(new MHandler());

}

@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.btn_clock:

String etContent = etNumber.getText().toString();

if (TextUtils.isEmpty(etContent)) {

Toast.makeText(this, "请输入时间间隔", Toast.LENGTH_SHORT).show();

return;

}

int number = Integer.valueOf(etContent);

boolean checked = cbIsloop.isChecked();

AlarmHelper.startAlarm(this, number, checked);

break;

case R.id.btn_cancle_clock:

AlarmHelper.cancenAlarm();

break;

default:

break;

}

}

private class MHandler extends Handler {

@Override

public void handleMessage(Message msg) {

super.handleMessage(msg);

if (null == msg) {

return;

}

int what = msg.what;

if (what == AlarmDialogUtil.DialogUtil_FLAG) {

// 显示弹框

AlarmDialogUtil.showDialog(MainActivity.this);

// 震动

AlarmVibrateUtil.vibrate(MainActivity.this, new long[]{500, 500}, 0);

// 铃声

AlarmMediaPlayer.playing(MainActivity.this);

}

}

}

public static SoftReference getHandlerSoftReference() {

return handlerSoftReference;

}

}

java响铃_android 闹铃(响铃、震动)相关推荐

  1. android 定时响铃,Android 中利用广播接收器(BroadCastReceiver)来接收定时响铃的闹铃信息...

    刚开始做东西得时候很不了解android中一些组件的应用方法,找了一个闹钟的小例子来更好的理解广播的接收. 应用程序的界面是这样的,这个例子是用闹钟的制定与解除来穿插broadcast  Receiv ...

  2. java实现倒计时闹钟_js带闹铃功能的倒计时代码

    Js倒计时代码,带闹铃功能,自定义闹钟倒计时功能,点击开始按钮,即可开始倒数,代码不是太复杂,新手应该能看懂,代码分享给大家. 效果图: 源码: Js倒计时,闹铃功能 function $(id){ ...

  3. 普通计算机怎么改闹铃的音乐,怎么设置闹钟铃声为自己喜欢的音乐

    大家好,我是时间财富网智能客服时间君,上述问题将由我为大家进行解答. 以OPPO手机为例,设置闹钟铃声为自己喜欢的音乐的方法是: 1.打开闹钟后点击一个闹钟或者新建一个闹钟. 2.选择铃声. 3.点击 ...

  4. 安卓创建系统闹铃以及系统日历提醒

    app的开发假如设计到事件提醒的话,在app本身里面假如软件不打开的话是不能进行提醒的,所以我们通过在添加提醒事件的时候,通过系统的闹铃来进行事件的提醒: 步骤一:先设置提醒的时间和内容 步骤二:设置 ...

  5. 如何使用计算机闹铃,梦畅电脑闹钟怎么用 梦畅电脑闹钟使用教程

    梦畅电脑闹钟是一款免费的定时执行计划的软件,可设定多组定时闹铃(可自定义文字.铃声).定时执行指定文件(如文本文件,MP3文件.可执行程序).定时关机.整点报时等计划,每个计划都可以设定周期.具体时间 ...

  6. 没法不起床:Android用户必备的闹铃利器

    起!床!啦!!!清晨除非有那么一个人能把我从睡梦中彻底摇醒,否则当闹铃响的时候,像我这样赖床的瞌睡虫只会伸手把闹铃设置成"五分钟后叫醒",就这样一直过了两小时或更久,才意识到自己根 ...

  7. 【51单片机】在LCD1602上显示时间:包含按键进行校准时间+闹钟功能:按键设置闹钟响铃时间,以及响铃的时间长度

    在51开发板上面实现,晶振为:11.0592Mhz 电路如下: LCD1602 蜂鸣器部分: 显示时间界面: 更改时间页面: 设置触发闹钟时间页面: 设置闹钟响铃时长页面:(O泡时间长度  为3秒) ...

  8. C语言课程设计之一—闹铃程序

    C语言课程设计之一--闹铃程序 在这里我是第一次开始写博客,算是一个开始吧!我想把学习过程中的每一份收获和状态在这里记录下来,当时间缓缓流动,或许以后的我再次回望这里,能有一种不一样的感动与体验! 好 ...

  9. android 接收闹钟广播,Android获取第三方闹钟的闹铃信息

    闹铃信息采集 闹铃时间,闹铃备注信息 闹铃引起系统变化的点: 1. Send Notification 2. Play Ring 闹铃信息结构体 ClockInfo{ String apkName; ...

最新文章

  1. Controller的要求
  2. stm32之spi之NSS管脚信号
  3. python爬虫为什么xpath路径正确却检索不到内容_中国知网爬虫
  4. latex 表格中虚线_如何识别和修复表格识别中的虚线
  5. .NET Core / C# 开发 IOT 嵌入式设备的个人见解
  6. Python笔记-安装python虚拟环境及配置opencv及通过opencv识别颜色
  7. Mr.J--.c 和.cpp 后缀详解
  8. sql执行组件是灰色的_如何分析SQL执行计划图形组件
  9. angular.element 动态添加和删除元素
  10. mysql的驱动connect放在哪里_十年测试解析:ddt结合excel,csv,mysql实现自动化测试数据驱动...
  11. Atitit.执行cmd 命令行 php
  12. 如何引入阿里矢量图标库彩色图标
  13. c语言求m n最小公倍数,最大公因数和最小公倍数的求法 求mn的最大公约数C语言...
  14. python学习14:字典和集合
  15. 无法在此iPhone激活面容ID怎么办?
  16. 产品web3d效果动态展示更生动形象
  17. 【软件测试理论】(六) 白盒测试方法论说明
  18. HCL打开显示当前系统用户怎么解决_iPhone8手机变成白苹果怎么办?
  19. 【要找能给你解决问题的人解决问题】
  20. nodejs mysql更新redis_node中的redis使用--ioredis

热门文章

  1. 【云周刊】第171期:重磅推荐,神龙架构首次开箱直播评测
  2. Vue学习之页面起始页设置
  3. 出走的门徒之七—驭势 吴甘沙:一步十年
  4. 黑马程序员————IO流1(day18)
  5. IT项目管理中projects、programs和portfolio之间的关系,附带operations以及OPM之间的关系分析
  6. Exploit开发系列教程-Exploitme1 (“ret eip” overwrite) More space on stack
  7. 计算机系统(八):网络层(上篇)
  8. MySQL主从架构、读写分离、集群相关面试问题
  9. SSM框架,ajax实现登陆界面验证和登陆成功后页面跳转问题
  10. 3c计算机通讯消费类电子产品,什么是3c产品?3c产品具体包括哪些