android 设置每天重复通知,使用AlarmManager设置重复通知-Android
我正在使用TimePicker从用户那里获取特定时间.然后,我每天都在这段时间使用此时间设置重复警报.当警报响起时,我希望将通知发送给用户.我的代码似乎是正确的,并且我在android studio中没有收到任何错误,但是当我运行此应用并在特定时间设置它时…它永远不会关闭.请帮忙.另外我还找不到任何能显示如何使用TimePicker获得AM或PM用户选择的东西.我的代码如下.提前致谢.
这是MyActivity(启动时打开的那个)
public class MyActivity extends Activity {
TimePicker mTimePicker;
Button setAlarm;
private int hour;
private int minute;
PendingIntent mPendingIntent;
int AM_PM;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
setAlarm = (Button) findViewById(R.id.setUpAlarm);
mTimePicker = (TimePicker) findViewById(R.id.timePicker);
setAlarm.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
setAlarm();
}
});
}
private void setAlarm() {
hour = mTimePicker.getCurrentHour();
minute = mTimePicker.getCurrentMinute();
Intent intent = new Intent(this, NotifyService.class);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
mPendingIntent = PendingIntent.getService(this, 0, intent, 0);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.SECOND , 0 );
calendar.set(Calendar.MINUTE , 0 + minute);
calendar.set(Calendar.HOUR , 0 + hour);
calendar.set(Calendar.AM_PM , Calendar.PM);
Toast.makeText(this, calendar.get(Calendar.MINUTE) + " " + calendar.get(Calendar.HOUR), Toast.LENGTH_SHORT).show();
// * 60 * 60 * 24
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP , calendar.getTimeInMillis() , 1000 * 60 * 60 * 24 , mPendingIntent);
// Toast.makeText(MyActivity.this , "Alarm Set" , Toast.LENGTH_SHORT).show();
}
这是我的通知课
public class NotifyService extends Service {
@Override
public IBinder onBind(Intent intent) {
return null;
}
@Override
public void onCreate() {
Uri sound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
NotificationManager mNM = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Intent intent = new Intent(this.getApplicationContext() , MyActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0 , intent ,0 );
Notification mNotify = new Notification.Builder(this)
.setContentTitle("Come Back!")
.setContentText("Have you seen todays tip?")
.setSmallIcon(R.drawable.ic_launcher)
.setContentIntent(pendingIntent)
.setSound(sound)
.build();
mNM.notify( 1 , mNotify);
}
}
我的清单
package="com.androidy.notificationapp" >
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
android:name=".MyActivity"
android:label="@string/app_name" >
android 设置每天重复通知,使用AlarmManager设置重复通知-Android相关推荐
- android alarmmanager 闹钟,Android编程使用AlarmManager设置闹钟的方法
本文实例讲述了Android编程使用AlarmManager设置闹钟的方法.分享给大家供大家参考,具体如下: package com.Aina.Android; import android.cont ...
- Android中使用AlarmManager设置闹钟
场景 设置闹钟 闹钟提醒 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 新 ...
- Android设置自定义手机铃声、短信、通知及闹钟铃声的方法
Android各种铃声提示音的自定义设置,在默认情况下不支持设置T卡中的文件.需要在T卡根目录中建立相应的文件夹,然后将所需的铃声文件复制到新建的文件夹中,才可以进行设置.各种铃声所对应的文件夹列举如 ...
- Android Notification的完整例子--设置下班闹钟和护眼闹钟
下班闹钟是先设置每天的下班时间,然后设置闹钟,到点提醒下班:护眼闹钟是设置从当前时间开始,每45分钟提醒一次,让眼睛休息一下.提醒默认振动和响铃还有灯光. public class RemindAct ...
- Android 系统语言切换监听和设置
最近项目上产品经理提了个需求,要求关闭语言国际化,不管手机系统设置那个国家的语言,都要显示汉语,好吧,既然有需求,那就做吧.但是项目中已经有英文的配置了,且是作为默认String提供的,这么多翻译好的 ...
- android view设置按钮颜色_建议收藏!最全 Android 常用开源库总结!
作者 | i小灰地址 | https://www.jianshu.com/p/3fde87405411 前言 收集了一些比较常见的开源库,特此记录(已收录350+).另外,本文将持续更新,大家有关 ...
- android指定日期闹钟,设置一次某个日期和时间的闹钟Android
我想设置某个日期和时间的一次闹铃.而且我还通过使用闹钟管理器来设置.但是我的问题是当设备关闭并打开,然后警报不醒来.设置一次某个日期和时间的闹钟Android 我的代码:: public void s ...
- Android 手机各大厂商的指纹设置界面
开发中有的时候要跳转到指纹设置界面,Android厂商较多,基本都是定制化的操作,所以每个厂商的指纹设计界面各不相同.下面罗列几款市面上比较常用的手机厂商的指纹设置界面,并附上跳转方式. privat ...
- pandas使用drop_duplicates函数基于subset参数指定的数据列子集删除重复行、并设置keep参数保留重复行中的最后一个数据行
pandas使用drop_duplicates函数基于subset参数指定的数据列子集删除重复行.并设置keep参数保留重复行中的最后一个数据行 目录
最新文章
- Java基础知识回顾之六 ----- IO流
- CVPR2021直播|点云补全的方法梳理及最新进展分享
- 3D点云配准(二多幅点云配准)
- asp.net core系列 53 IdentityServer4 (IS4)介绍
- linux存储--虚拟内存详解MMU、页表(十)
- Ubuntu最简单的方式安装NVIDIA显卡驱动和cuda工具
- struts2处理上传文件路径问题
- 基于Java的四大开源测试工具
- Bitcoin 中的挖矿算法(4) 产生genesis区块
- 微信小程序下拉框插件_微信小程序下拉框组件使用方法详解
- 1、jquery事件绑定和委托的实现
- Java元数据总结:Java注释的使用和定义
- LeetCode 803. 打砖块(并查集)
- 我的世界java 内存_我的世界如何分配内存
- 使用ViewModel模式简化WPF TreeView
- Python:IPython性能度量
- K3 Cloud 数据库查询表常用语句
- Pattern Recognition and Machine Learning(模式识别与机器学习)第一章导读
- 40岁计算机研究生能干什么工作,快四十岁了,还能干点什么?
- HTML压缩(JSP的GZIP实现)