Android Service实现闹钟
来源:互联网 发布:1099端口占用 编辑:程序博客网 时间:2024/05/17 00:58
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(); }}
实现效果,如下图所示。
0 0
- Android Service实现闹钟
- android service实现循环定时提醒(仿闹钟)
- Android闹钟的实现!
- Android闹钟的实现!
- android 闹钟的实现
- Android AlarmManager闹钟实现
- Android独立闹钟实现
- android闹钟实现原理
- Android闹钟实现原理
- android闹钟实现原理
- Android关机闹钟实现
- Android简易闹钟实现
- Android 闹钟实现
- Android之实现闹钟
- Android实现-闹钟-通知
- Android 实现自定义闹钟
- Android 实现自定义闹钟
- Android闹钟实现
- 设置ImageLoader配置,缓存圆形图片
- 简单定时器 Timer
- LeetCode Compare Version Numbers
- 【leetcode】Data Stream as Disjoint Intervals
- 手机开发实战60——语音信箱介绍2
- Android Service实现闹钟
- 剑指offer-27二叉搜索树与双向链表
- 网络图片+修改导航样式
- 真假泰版球衣知识
- 疑惑:自定义控件中 TypedArray对象进行为什么要进行recycle()
- VACUUM PostgreSQL 手册
- textFied随着键盘移动
- java-maven
- VMware ESXi自动化部署实践