闹钟闹不醒的可以自己去调整下,这个最是最基本的
MainActivity
public class MainActivity extends AppCompatActivity { private AlarmManager alarmManager; private PendingIntent pendingIntent; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取闹钟管理者 alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE); } public void setAlarmOne(View view) { //获取当前系统时间 Calendar calendar = Calendar.getInstance(); int huor = calendar.get(Calendar.HOUR_OF_DAY); int minute = calendar.get(Calendar.MINUTE); //1 弹出时间对话框 TimePickerDialog timePickerDialog = new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() { @Override public void onTimeSet(TimePicker view, int i, int i1) { Calendar c = Calendar.getInstance(); c.set(Calendar.HOUR_OF_DAY, i); c.set(Calendar.MINUTE, i1); //2确定好选择的时间 //3设置闹钟 //4当时间一到,将执行的响应 Intent intent=new Intent(); intent.setAction("com.zking.risk_android_alarn_notification.RING"); pendingIntent = PendingIntent.getBroadcast(MainActivity.this,0x101,intent,0); alarmManager.set(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(), pendingIntent); } }, huor, minute, true); timePickerDialog.show(); } public void setAlarmCycle(View view) { //获取当前系统时间 Calendar calendar=Calendar.getInstance(); int hour=calendar.get(Calendar.HOUR_OF_DAY); int minute=calendar.get(Calendar.MINUTE); //01.弹出时间对话框 TimePickerDialog timePickerDialog=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() { @Override public void onTimeSet(TimePicker timePicker, int i, int i1) { Calendar c=Calendar.getInstance(); c.set(Calendar.HOUR_OF_DAY,i); c.set(Calendar.MINUTE,i1); //02.确定好选择的时间 //03.设置闹钟 //04.当之间一到,将执行的响应 Intent intent=new Intent(); intent.setAction("com.zking.risk_android_alarn_notification.RING"); pendingIntent = PendingIntent.getBroadcast(MainActivity.this,0x102,intent,0); alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),5000, pendingIntent); } },hour,minute,true); timePickerDialog.show(); } public void cancelAlarmCycle(View view){ alarmManager.cancel(pendingIntent); } }
RingActivity
public class RingActivity extends AppCompatActivity { private MediaPlayer mediaPlayer; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_ring); //播放音乐 mediaPlayer = MediaPlayer.create(this, R.raw.rooster); mediaPlayer.start(); } public void close(View view) { mediaPlayer.stop(); finish(); } }
RingReceived
public class RingReceived extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { if("com.zking.risk_android_alarn_notification.RING".equals(intent.getAction())){ Log.i("test","收到广播了"); //跳转到Activity Intent intent1=new Intent(context,RingActivity.class); //给Intent设置标志位Flag intent1.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //Intent的组成部分:ComponementName extra Action Data Categlay(分组) Flag context.startActivity(intent1); } } }
activity_main
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context="com.zking.risk_android_alarn_notification.MainActivity"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="设置闹钟(一次)" android:onClick="setAlarmOne" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="设置闹钟(周期)" android:onClick="setAlarmCycle" /> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="取消周期闹钟" android:onClick="cancelAlarmCycle" /> </LinearLayout>
actiity_ring
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_ring" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:orientation="vertical" tools:context="com.zking.risk_android_alarn_notification.RingActivity" android:weightSum="1"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="亲爱的,该起床了" android:textSize="30sp" /> <TimePicker android:layout_width="324dp" android:layout_height="378dp" android:id="@+id/timePicker" android:layout_weight="0.30" /> <Button android:layout_width="match_parent" android:layout_height="wrap_content" android:text="关闭" android:onClick="close" /> </LinearLayout>
最后的清单配置
<activity android:name=".RingActivity"></activity> <receiver android:name=".RingReceived"> <intent-filter> <action android:name="com.zking.risk_android_alarn_notification.RING"></action> </intent-filter> </receiver>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍Android实现简易闹钟功能,包括了Android实现简易闹钟功能的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Android通过广播来实现闹钟的具体代码,供大家参考,具体内容如下 1.创建广播接收RepeatingAlarm.java 2.广播在Manifest.xml中配置: 3.通过代码设置一个闹钟 4.通过代码取消一个闹钟: 5.闹钟响是弹出的对化框并播放音
本文向大家介绍简单实现Android闹钟功能,包括了简单实现Android闹钟功能的使用技巧和注意事项,需要的朋友参考一下 闹钟的简单实现,只有显示时间和设置闹钟。 AlarmView TimeView AlarmReceiver MainActivity PlayAlarmAty 运行效果图 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
本文向大家介绍Android服务应用ClockService实现闹钟功能,包括了Android服务应用ClockService实现闹钟功能的使用技巧和注意事项,需要的朋友参考一下 ClockService安卓服务应用实现闹钟,供大家参考,具体内容如下 创建ClockActivity,可输入一个时间(使用Time文本框),再创建一个ClockService在用于计时,到时间后,以在Activity中
本文向大家介绍Android自定义View 实现闹钟唤起播放闹钟铃声功能,包括了Android自定义View 实现闹钟唤起播放闹钟铃声功能的使用技巧和注意事项,需要的朋友参考一下 先上图看一下闹钟唤期页面的效果 实现的功能: 1:转动的图片根据天气情况更换 2:转动时间可以设置,转动结束,闹铃声音就结束 3:光圈颜色渐变效果 直接上代码啦: 以上所述是小编给大家介绍的Android自定义View
本文向大家介绍Android闹钟机制实现定时任务功能,包括了Android闹钟机制实现定时任务功能的使用技巧和注意事项,需要的朋友参考一下 Android的闹钟实现机制, 需要调用AlarmManager.set()将闹铃时间记录到系统中,当闹铃时间到后,系统会给应用程序发送广播,我们只需要去注册广播接收器就可以了。 本文分三部分讲解如何实现闹钟: 目录: 1. 设置闹铃时间; 2. 接收闹铃事件
本文向大家介绍Android自定义闹钟功能,包括了Android自定义闹钟功能的使用技巧和注意事项,需要的朋友参考一下 Android闹钟alarmManager+PendingIntent的使用方法,供大家参考,具体内容如下 这次给大家分享两种闹钟: 第一种是当到达闹钟时间后执行一次相应的操作 alarmManager.set(AlarmManager.RTC_WAKEUP,c.getTimeI