android闹钟――原代码
16lz
2021-01-23
手机当中肯定是有闹钟的,这是不用说的,要不然就不是手机了。对吧。
下面我根据广播的方式写了一个闹钟,大家请看图:
- 下面让我们看一下原代码的是如何写的,
- packagecom.smart;
- importjava.util.Calendar;
- importandroid.app.Activity;
- importandroid.content.BroadcastReceiver;
- importandroid.content.Context;
- importandroid.content.Intent;
- importandroid.content.SharedPreferences;
- importandroid.media.MediaPlayer;
- publicclassAlarmReceiverextendsBroadcastReceiver{
- /**
- *通过广播进行扫描,是否到达时间后再响起闹铃
- *
- **/
- @Override
- publicvoidonReceive(Contextcontext,Intentintent){
- SharedPreferencessharedPreferences=context.getSharedPreferences("alarm_record",Activity.MODE_PRIVATE);
- Stringhour=String.valueOf(Calendar.getInstance().get(Calendar.HOUR_OF_DAY));
- Stringminute=String.valueOf(Calendar.getInstance().get(Calendar.MINUTE));
- Stringtime=sharedPreferences.getString(hour+":"+minute,null);//小时与分,
- if(time!=null){//判断是否为空,然后通过创建,
- MediaPlayermediaPlayer=MediaPlayer.create(context,R.raw.llb);
- mediaPlayer.start();//开始
- }
- }
- }
- packagecom.smart;
- importandroid.app.Activity;
- importandroid.app.AlarmManager;
- importandroid.app.AlertDialog;
- importandroid.app.PendingIntent;
- importandroid.content.Context;
- importandroid.content.DialogInterface;
- importandroid.content.Intent;
- importandroid.content.SharedPreferences;
- importandroid.os.Bundle;
- importandroid.view.View;
- importandroid.view.View.OnClickListener;
- importandroid.widget.Button;
- importandroid.widget.TextView;
- importandroid.widget.TimePicker;
- publicclassMainextendsActivityimplementsOnClickListener{
- privateTextViewalarmRecord;
- privateSharedPreferencessharedPreferences;
- @Override
- publicvoidonCreate(BundlesavedInstanceState){
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- ButtonaddAlarm=(Button)findViewById(R.id.addAlarm);
- alarmRecord=(TextView)findViewById(R.id.alarmRecord);
- addAlarm.setOnClickListener(this);
- sharedPreferences=getSharedPreferences("alarm_record",Activity.MODE_PRIVATE);
- AlarmManageraManager=(AlarmManager)getSystemService(Context.ALARM_SERVICE);
- Intentintent=newIntent(this,AlarmReceiver.class);
- PendingIntentpendingIntent=PendingIntent.getBroadcast(this,0,intent,0);
- aManager.setRepeating(AlarmManager.RTC,0,60*1000,pendingIntent);
- }
- @Override
- publicvoidonClick(Viewv){
- Viewview=getLayoutInflater().inflate(R.layout.llb,null);//
- finalTimePickertimePicker=(TimePicker)view.findViewById(R.id.timepicker);
- timePicker.setIs24HourView(true);//
- newAlertDialog.Builder(this).setTitle("设置闹铃时间").setView(view).setPositiveButton("确定",newDialogInterface.OnClickListener(){
- //设置标题
- @Override
- publicvoidonClick(DialogInterfacedialog,intwhich){
- //按钮事件触发方法
- StringtimeStr=String.valueOf(timePicker.getCurrentHour())+":"+String.valueOf(timePicker.getCurrentMinute());
- alarmRecord.setText(alarmRecord.getText().toString()+"\n"+timeStr);
- sharedPreferences.edit().putString(timeStr,timeStr).commit();
- }
- }).setNegativeButton("取消",null).show();
- }
- }
更多相关文章
- Android延长Toast的时间
- android 后台长时间执行周期性定时任务 解决方案收集
- Android下uptime获取系统启动和运行时间
- Android多种方法获取系统时间
- Android用户界面开发(9):日期和时间
- Android AlarmManager实现定时任务(也就是闹钟) 附Demo源码
- 从三流外包摇身变成阿里P6(Android开发岗),专科出生的他用五年时间
- Android UTC和Local 时间互转