setWindow(int, long, long, PendingIntent) setExact(int, long, PendingIntent) 从上面的两个方法我们可以看出,没有了repeat,就是设置了闹钟只能响一次了...因此需要解决如下几个主要问题: 1.如何设置一个闹钟每天都准确提醒呢? 2.手机重启之后,设置的闹钟是否还有效? 3.应用程序被杀死之后,闹钟是否还有效? 1.如何设置一个闹钟每天都准确提醒呢?...// 不能用startActivity,会导致生成无数个activity alarm(context, intent); } /** * 如何设置一个闹钟每天都准确提醒呢...alarmManager.setWindow(AlarmManager.RTC_WAKEUP, triggerAtTime, interval, operation); } } 2.手机重启之后,设置的闹钟是否还有效...我的华为手机貌似把这项功能给屏蔽了) public class BootCompleteReceiver extends BroadcastReceiver { /** * 手机重启之后,设置的闹钟是否还有效
从Android 4.4(API Level19)开始,所有的重复闹钟都将是非精确型的。...不同的闹钟类型会在本节课后半部分展开。 设置重复闹钟 如上所述,对于定期执行的任务或者数据查询而言,使用重复闹钟是一个不错的选择。它具有下列属性: 闹钟类型(后续章节中会展开讨论); 触发时间。...如果你为同一个Pending Intent设置了另一个闹钟,那么它会将第一个闹钟覆盖。 选择闹钟类型 使用重复闹钟要考虑的第一件事情是闹钟的类型。...,对接收器设置了 android:enabled="false"属性。...你可以像下面这样启动接收器(比如用户设置了一个闹钟): ComponentName receiver = new ComponentName(context, SampleBootReceiver.class
本文实例为大家分享了Android通过广播来实现闹钟的具体代码,供大家参考,具体内容如下 1.创建广播接收RepeatingAlarm.java import android.content.BroadcastReceiver...; import android.content.Context; import android.content.Intent; import android.util.Log; public class...</receiver 3.通过代码设置一个闹钟 Intent intent = new Intent(this, RepeatingAlarm.class); intent.setAction(...getSystemService(ALARM_SERVICE); am.set(AlarmManager.RTC, c.getTimeInMillis(), sender);//c为设置闹钟的时间的...; import android.app.PendingIntent; import android.content.Context; import android.content.DialogInterface
服务端提供一个接口,返回当前周六是否应该打开闹钟,然后快捷指令每周六凌晨去调这个接口,来打开关闭闹钟。...先在日历增加了日程,又添加了一个周六的闹钟。 此时发现捷径里有一个「开关闹钟」的功能,也就是说如果当前闹钟是关的,执行这个功能就会打开闹钟。如果当前是打开的,执行这个功能就会关闭闹钟。...我只需要每周执行一次「开关闹钟」就可以了。比如周六的闹钟,每周日执行「开关闹钟」。 第 1 周添加了一个每周六响的闹钟,周六成功响了,到了周日会把这个闹钟自动关掉。...第 2 周到了周六不会响,到了周日会把这个闹钟自动打开。 第 3 周到了周六会响,到了周日会把这个闹钟自动关掉。 … … 哈哈,成功实现大小周闹铃,自动化的命令如下。...记得添加闹钟功能的时候默认是切换状态,需要改成 开/关 功能。 没想到这么简单就实现了大小周闹钟,本来是想借着这个机会学习总结下苹果捷径配置的,看来需要再等下次了,哈哈,下次一定。
闹钟的简单实现,只有显示时间和设置闹钟。...; import java.util.Date; /** * Created by lenovo on 2017/11/20. */ //闹钟 public class AlarmView...; calendar.set(Calendar.MILLISECOND,0); //写出当前时间 Calendar currentTime=Calendar.getInstance(); //设置时间小于当前时间...,根据请求码移除特定的闹钟,那么把时间当做请求码 saveAlarmList(); } },c.get(Calendar.HOUR_OF_DAY),c.get(Calendar.MINUTE),true...private static class AlarmData{ //闹钟所要响起的时间 @RequiresApi(api = Build.VERSION_CODES.N) public AlarmData
程序关闭再打开时间仍然保留你上次设置的时间。这就是Preferences的作用! 程序欢迎界面: ? 点击设置闹钟界面: ? 点击闹钟设置中的设置后的界面: ? 闹钟时间到了弹出dialog: ?...设置重复想起闹钟后的界面: ? 点击返回键弹出的提示: ?...time1Share.edit(); editor.putString("TIME1", tmpS); editor.commit(); Toast.makeText(MainActivity.this,"设置大明闹钟时间为...time2Share.edit(); editor.putString("TIME2", tmpS); editor.commit(); Toast.makeText(MainActivity.this,"设置大明闹钟时间为...<string name="str_button1" 设置闹钟</string <string name="str_button2" 删除闹钟</string <string name="str_title2
一、闹钟的设置不需要数据库,但是展示闹钟列表的时候需要,所以需要数据库: public class MySQLiteOpenHelper extends SQLiteOpenHelper{ public...cursor.getString(cursor.getColumnIndex("update_time")))); } return clockList; } } 三、闹钟的增加即设置闹钟...c.set(Calendar.MINUTE, minute); //设置闹钟的分钟数 c.set(Calendar.SECOND,...0); //设置闹钟的秒数 c.set(Calendar.MILLISECOND, 0); //设置闹钟的毫秒数...: 调用TimePickerDialog实现,这是一个时间选择器,通过监听其选择的时间进行闹钟设置; 闹钟设置的主要代码如下: 1.获取系统服务: alarmManager
第一步是实现简单布局,在布局中写两个Button,一个设置,一个取消 第二步:初始化页面布局及Button public class MainActivity extends AppCompatActivity...newIntent(this,AlarmReceiver.class); intent.setAction(AlarmReceiver.BC_ACTION); intent.putExtra("msg","闹钟开启..."); return intent; } //设置定时执行的任务 private void setAlarm(){ //android Api的改变不同版本中设 置有所不同 if(Build.VERSION.SDK_INT...}else{ am.setExact(AlarmManager.RTC_WAKEUP,getTimeDiff(),pi); } } public long getTimeDiff(){ //这里设置的是当天的...; import android.content.Intent; import android.os.Build; import android.os.CountDownTimer; import android.util.Log
可以设置每天的闹钟,周一到星期天之间多选的闹钟,也可以设置选择一次性闹钟,跟系统设置闹钟的方式基本差不多吧。...主要问题 API 19以后没有了重复设置,那如果设置一个闹钟每天都准确提醒呢? 手机重启之后,设置的闹钟是否还有效? 应用程序被杀死之后,闹钟是否还有效?...那提醒的时候,我们可以再重新设置一次嘛,这就解决了API 19设置重复闹钟的问题。 根据判断系统版本,使用不同的设置闹钟的方法,进行设置。接下来我们通过广播接收系统发来的通知,进行闹钟提醒。...如果闹钟设置的id是一样的,后边设置的会自动覆盖先前设置的闹钟。如果谁有比较好的解决应用程序被杀死后,闹钟失效的问题,欢迎大家提供出来分享。...demo和类库地址:https://github.com/loonggg/Android-AlarmManagerClock
由于不同Android手机厂商提供的系统闹钟包名都不一致,所以只能通过过滤当前手机所有的应用,以确定闹钟应用的包名,进而启动它。...="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android...="match_parent" android:layout_height="wrap_content" android:text="启动系统闹钟" / </RelativeLayout...clockPackageInfos == null || clockPackageInfos.size() == 0) { Toast.makeText(getApplicationContext(), "--启动系统闹钟失败...startActivity(startSysClockIntent); } catch (Exception e) { Toast.makeText(getApplicationContext(), "--启动系统闹钟失败
Android的闹钟实现机制, 需要调用AlarmManager.set()将闹铃时间记录到系统中,当闹铃时间到后,系统会给应用程序发送广播,我们只需要去注册广播接收器就可以了。...本文分三部分讲解如何实现闹钟: 目录: 1. 设置闹铃时间; 2. 接收闹铃事件广播; 3. 重开机后重新计算并设置闹铃时间; 1....<action android:name="android.alarm.demo.action" / </intent-filter </receiver 3....name="<em>android</em>.intent.action.BOOT_COMPLETED" / </intent-filter </receiver 我在设置时钟的时候遇到一点问题 我开始的代码是这样写的...alarmManager.set(AlarmManager.RTC_WAKEUP, (5*1000), sender); 我的本意是设定五秒后启动闹钟 但是每次都是我设置完闹钟之后立马就启动了。
看到正点闹钟上的设置时间的滑动效果非常好看,自己就想做一个那样的,在网上就开始搜资料了,看到网上有的齿轮效果的代码非常多,也非常难懂,我就决定自己研究一下,现在我就把我的研究成果分享给大家。...="时间设置" android:textSize="24sp" / </LinearLayout 紧接着就是MainActivity的代码,代码如下: package net.loonggg.test...="@color/light_black" android:paddingLeft="10dp" android:text="设置时间" android:textColor="@color/black...-- 时间的相关设置 -- <LinearLayout android:id="@+id/ll_time_wheel" android:layout_width="fill_parent" android...-- 设置时钟的按钮 -- <RelativeLayout android:layout_width="fill_parent" android:layout_height="50dp"
Android通过AlarmManager类实现闹钟,供大家参考,具体内容如下 简介 闹钟是生活中最常用的功能了,很多App都可以加入该功能,提醒用户某个时刻要做的事情。...在Android系统中可以通过AlarmManager类实现闹钟,AlarmManager类是专门用来设定在某个指定的时间去完成指定的事件。...:name=".AlarmReceiver" android:process=":remote" / 接下来,在MainActivity中我们实现“设置闹钟”和“取消闹钟”的事件监听,让我们来看一下具体实现代码...AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE); // 设置闹钟 am.set(AlarmManager.RTC_WAKEUP...() + (10 * 1000), (24 * 60 * 60 * 1000), pendingIntent); String tmpS = "设置闹钟时间为" + format(hourOfDay)
今天开发一个小应用需要添加一个响应事件实现跳转到闹钟和日历,在遍访网上各种回答后得出了最简单答案,现记下来供自己与网友共享。...1.跳转到闹钟: 在对应的响应事件中添加: Intent alarms = new Intent(AlarmClock.ACTION_SET_ALARM); startActivity(alarms...); 别忘了在AndroidManifest.xml文件中添加权限: <uses-permission android:name="com.android.alarm.permission.SET_ALARM...","com.android.calendar.LaunchActivity"); } else{ cn = new ComponentName("com.google.android.calendar...Build.VERSION.SDK 系统版本获取 尽管Android向下兼容不好,但是一个程序还是可以在多个平台上跑的。
下面使用CountDownTimer类实现倒计时小闹钟,CountDownTimer类其实很简单,一般只需重写其onFinish和onTick方法就可以实现倒计时小闹钟,代码如下: MainActivity...startBtn.setOnClickListener(this); closeMusicBtn.setOnClickListener(this); setBrewTime(3); } /** * 设置闹钟倒计时初始值...(brewTime < 1) { brewTime = 1; } timeText.setText(String.valueOf(brewTime) + "m"); } /** * 开启闹钟...*/ public void startBrew() { // 创建一个CountDownTimer对象记录闹钟时间 countDownTimer = new CountDownTimer(brewTime...// 加载指定音乐,并为之创建MediaPlayer对象 alarmMusic = MediaPlayer.create(MainActivity.this, R.raw.music); // 设置为循环播放
具体原理是这样的:它使用手机上的麦克风测定使用者的呼吸频率,根据你的呼吸情况从而判断出你脑波处于即将苏醒的时候叫醒你,这样就避免了突然被闹钟叫醒时身体的不适。如此神奇的设计确实让人赞叹!...使用说明: 先到自带闹钟设置一个闹钟,必须离当前时间大于26分钟,而且最多设置离当前时间大于24小时。...效果: 在离闹钟时间20分钟以后,会每隔几秒就会以渐强铃声方式发出“嘀嘀嘀”声,直到闹钟时间,自动退出程序。 HappyWakeUp是根据医学上关于睡眠的研究,所设计出来的软件。
关于闹钟: ?...25 26 2.1.可以在响铃时间里设置闹表时间 27 28 2.2.还可以用快速设置,+1表示在系统时间的基础上增加一分钟,-1表示在系统时间的基础上减去一分钟...appHomepageLabel.setName("appHomepageLabel"); // NOI18N 109 110 appDescLabel.setText("这是一个小应用程序,闹钟...(getHour() + 1); 986 } 987 // 如果分钟数还没有设置,那么就设置为当前分钟数 988 if (dorp_down_minute.getSelectedIndex...myAlarm.getSecondOfResult()==30){ 120 trayIcon.displayMessage("温馨提示","距闹钟设置时间还剩
> 网页闹钟
概述 iOS的机制是一旦程序处于后台,那么程序就处于暂停状态,这也是iOS系统后台开很多应用依旧流畅的原因,因为这个机制,所以类似闹钟这样的应用就不能用定时器实现 那么我们要怎样实现定时提醒的功能呢...scheduleLocalNotification(notification); } 代码中通知的重复周期为NSCalendarUnit.Day,所以每天都会通知,要想一天通知4次的话,只能注册四个通知,并设置重复周期为
大概分为三级结构 第一级:MoboPushAlarmManager,主要工作是管理闹钟,初始化闹钟,对闹钟时间进行校准,取消闹钟。...第二级:MobogeniePushServiceNew,主要工作是对闹钟设置的pendingintent的动作(startservice)进行处理。...createTargetIntent(Context c, MoboPushMessage message) { Intent intent = new Intent(); intent.setAction("android.intent.action.MAIN..."); intent.addCategory("android.intent.category.LAUNCHER"); return intent; } @Override public...解决方法可以自由的写在初始化闹钟里面,如果发现时间有错误,可以再初始化一下闹钟,这样就可以覆盖以前的闹钟 2)每天push只能在固定的或者某个定义的时间内推送 我们在MoboMessageSelector
领取专属 10元无门槛券
手把手带您无忧上云