Android Service实现闹钟

原创 2016年06月01日 21:49:43

1.MainActivity.class中开启服务

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Intent intent = new Intent(this, LongRunningService.class);
        startService(intent);
    }
}

2.LongRunningService.class中获取闹钟服务,并定时10s,然后启动AlarmActivity.class

import android.app.AlarmManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.os.SystemClock;
import android.util.Log;

import java.util.Date;

/**
 * Created by admin on 16-5-31.
 */
public class LongRunningService extends Service{
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        new Thread(new Runnable() {
            @Override
            public void run() {
                Log.i("LongRunningService", "executed at " + new Date().toString());
            }
        }).start();
        AlarmManager manager = (AlarmManager) getSystemService(ALARM_SERVICE);
        int anHour = 10 * 1000;
        long triggerAtTime = SystemClock.elapsedRealtime() + anHour;
        Intent i = new Intent(this, AlarmActivity.class);
        PendingIntent pi = PendingIntent.getActivity(this, 0, i, 0);
        manager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, triggerAtTime, pi);//1min后返回执行
        return super.onStartCommand(intent, flags, startId);
    }
}

3.AlarmActivity.class中实例化一个对话框,并播放音乐

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class AlarmActivity extends Activity {

    MediaPlayer mAlarmMusic;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mAlarmMusic = MediaPlayer.create(this,R.raw.alarm);
        mAlarmMusic.setLooping(true);
        mAlarmMusic.start();
        new AlertDialog.Builder(AlarmActivity.this).setTitle("Alarm !!!")
                .setMessage("Time Out,GO!")
                .setPositiveButton("OK", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        mAlarmMusic.stop();
                        AlarmActivity.this.finish();
                    }
                }).show();
    }
}

实现效果,如下图所示。

            


版权声明:本文为博主原创文章,转载注明出处

Android提供的系统服务之--AlarmManager(闹钟服务)

本节引言: 本节主要介绍的是Android系统服务中的---AlarmManager(闹钟服务), 除了开发手机闹钟外,更多的时候是作为一个全局的定时器,通常与Service 结合,在特定时间启...
  • syf6568362
  • syf6568362
  • 2015年12月25日 09:41
  • 2719

Android—做一个持续的的服务—闹钟服务

设计思路如上图package com.example.demo35;import android.app.Activity; import android.app.AlarmManager; impo...
  • qq_25897059
  • qq_25897059
  • 2015年10月31日 17:02
  • 1371

android service实现循环定时提醒(仿闹钟)

人每天都要喝8杯水才能保持健康,于是苦逼的程序员总是一遍代码就忘了时间,于是我突发奇想能不能开发一个apk能够实现固定的间隔时间定时提醒我要喝水了呢?apk基本功能:1)能够设置间隔时间 2)在ap...
  • baiqihui
  • baiqihui
  • 2016年09月23日 19:19
  • 785

Android Service实现闹钟服务 源代码

  • 2016年06月02日 07:41
  • 28.96MB
  • 下载

Android Service实现闹钟

Android 用Service实现闹钟
  • chjr1000
  • chjr1000
  • 2016年06月01日 21:49
  • 1357

Android复杂闹钟

  • 2011年09月03日 16:42
  • 854KB
  • 下载

初学Android,闹钟服务调用Service(六十九)

下面的例子是让AlarmManager定时调用某个Service,从而让系统实现定时更换壁纸的功能界面非常简单先创建更换壁纸的服务类package WangLi.Service.AlarmWallpa...
  • lee576
  • lee576
  • 2012年10月16日 14:28
  • 10047

android,闹钟定时功能,实现过程

实现简单的闹钟功能,具有添加闹钟,删除闹钟和修改闹钟的功能,具有不难看的ui...
  • sinat_28676875
  • sinat_28676875
  • 2016年04月27日 22:43
  • 13677

Android 闹钟 Demo

  • 2015年03月28日 19:44
  • 1.71MB
  • 下载

初学Android,手机闹钟服务(六十八)

AlarmManager的使用机制有的称呼为全局定时器,有的称呼为闹钟。通过对它的使用,它的作用和Timer有点相似。都有两种相似的用法:(1)在指定时长后执行某项操作(2)周期性的执行某项操作在an...
  • lee576
  • lee576
  • 2012年10月15日 16:47
  • 19132
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android Service实现闹钟
举报原因:
原因补充:

(最多只允许输入30个字)