android闹钟——原代码

手机当中肯定是有闹钟的,这是不用说的,要不然就不是手机了。对吧。
下面我根据广播的方式写了一个闹钟,大家请看图:

下面让我们看一下原代码的是如何写的,
package com.smart;

import java.util.Calendar;

import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.media.MediaPlayer;

public class AlarmReceiver extends BroadcastReceiver {
/**
 * 通过广播进行扫描,是否到达时间后再响起闹铃
 *
 * */
    @Override
    public void onReceive(Context context, Intent intent) {

       
        SharedPreferences sharedPreferences=context.getSharedPreferences("alarm_record", Activity.MODE_PRIVATE);
        String hour=String.valueOf(Calendar.getInstance().get(Calendar.HOUR_OF_DAY));
        String minute=String.valueOf(Calendar.getInstance().get(Calendar.MINUTE));
        String time=sharedPreferences.getString(hour+":"+minute, null);//小时与分,
       
        if(time!=null){//判断是否为空,然后通过创建,
            MediaPlayer mediaPlayer=MediaPlayer.create(context, R.raw.llb);
            mediaPlayer.start();//开始
        }
   
    }

}
package com.smart;

import android.app.Activity;
import android.app.AlarmManager;
import android.app.AlertDialog;
import android.app.PendingIntent;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.TimePicker;

public class Main extends Activity implements OnClickListener{
   
    private TextView alarmRecord;
    private SharedPreferences sharedPreferences;
   
   
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button addAlarm=(Button)findViewById(R.id.addAlarm);
        alarmRecord=(TextView)findViewById(R.id.alarmRecord);
        addAlarm.setOnClickListener(this);
        sharedPreferences=getSharedPreferences("alarm_record", Activity.MODE_PRIVATE);
        AlarmManager aManager=(AlarmManager)getSystemService(Context.ALARM_SERVICE);
        Intent intent=new Intent(this,AlarmReceiver.class);
        PendingIntent pendingIntent=PendingIntent.getBroadcast(this, 0, intent, 0);
        aManager.setRepeating(AlarmManager.RTC, 0, 60*1000, pendingIntent);
   
    }

   
    @Override
    public void onClick(View v) {
        View view=getLayoutInflater().inflate(R.layout.llb,    null);//
        final TimePicker timePicker=(TimePicker)view.findViewById(R.id.timepicker);
        timePicker.setIs24HourView(true);//
        new AlertDialog.Builder(this).setTitle("设置闹铃时间").setView(view).setPositiveButton("确定", new DialogInterface.OnClickListener() {
            //设置标题
            @Override
            public void onClick(DialogInterface dialog, int which) {
            //按钮事件触发方法
                String timeStr=String.valueOf(timePicker.getCurrentHour())+":"+String.valueOf(timePicker.getCurrentMinute());
                alarmRecord.setText(alarmRecord.getText().toString()+"\n"+timeStr);
                sharedPreferences.edit().putString(timeStr, timeStr).commit();
               
            }
        }).setNegativeButton("取消", null).show();
       
       
       
   
       
       
       
       
    }
}

posted on 2011-03-15 15:51  llb988  阅读(5617)  评论(1编辑  收藏  举报

导航