Service、Alarm与BroadcastReceiver的使用方法
1:定义一个服务类,在服务类中使用AlarmManager 来管理服务的运行
public class WtacService extends Service{
private AlarmManager alarmManager = null;
private PendingIntent alarmIntent = null; @Override
public IBinder onBind(Intent arg0) {
return null;
} @Override
public void onCreate() {
super.onCreate();
alarmManager = (AlarmManager)this.getSystemService(Context.ALARM_SERVICE);
String ALARM_ACTION = WR.ACTION_WTAC_ALAEM;
Intent intentTo = new Intent(ALARM_ACTION);
alarmIntent = PendingIntent.getBroadcast(this, 0, intentTo, 0);
} @Override
public int onStartCommand(Intent intent, int flags, int startId) {
final Context context = this.getApplicationContext(); int alarmType = AlarmManager.ELAPSED_REALTIME_WAKEUP;
long timeRepeat = SystemClock.elapsedRealtime()+(10*1000);
long intervalMillis = 10*1000;
alarmManager.setInexactRepeating(alarmType, timeRepeat, intervalMillis, alarmIntent); Thread mThread = new Thread(new Runnable(){
@Override
public void run() {
try{
DBManager dbManager = new DBManager(context);
List<Wtac> list = dbManager.selectWtacs();
Gson gson = new Gson();
String json = gson.toJson(list, new TypeToken<List<Wtac>>(){}.getType());
System.out.println("结果:"+json);
}finally{
//服务每次执行完成就关闭
stopSelf();
}
}
});
mThread.start(); return Service.START_NOT_STICKY;
}
}
2:在AndroidManifest.xml文件中注册这个Service
<service
android:name="com.wzh.service.WtacService"
android:enabled="true"
android:exported="false" />
3:定义广播接收器
public class WtacAlarmReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
Intent startIntent = new Intent(context, WtacService.class);
context.startService(startIntent);
}
}
4:在AndroidManifest.xml文件中注册这个广播接收器
<receiver android:name="com.wzh.receiver.WtacAlarmReceiver"
android:enabled="true"
android:exported="false">
<intent-filter>
<action android:name="com.wzh.receiver.ACTION_WTAC_ALAEM"/>
</intent-filter>
</receiver>
Service、Alarm与BroadcastReceiver的使用方法的更多相关文章
- Android service ( 一 ) 三种开启服务方法
一. Service简介 Service是android 系统中的四大组件之一(Activity.Service.BroadcastReceiver.ContentProvider),它跟 Activ ...
- Android Service 通知Activity更新界面的方法研究
Android Service 通知Activity更新界面的方法研究 Android的最重要的组件式service和activity,那么在使用的过程中,我们最常遇到的问题是他们之间的通信问题. ...
- Android 保持Service不被Kill掉的方法--双Service守护 && Android实现双进程守护
本文分为两个部分,第一部分为双Service守护,第二部分为双进程守护 第一部分: 一.Service简介:Java.lang.Object ↳Android.content.Context ↳an ...
- 用JQuery中的Ajax方法获取web service等后台程序中的方法
用JQuery中的Ajax方法获取web service等后台程序中的方法 1.准备需要被前台html页面调用的web Service,这里我们就用ws来代替了,代码如下: using System; ...
- 保持Service不被Kill掉的方法--双Service守护 && Android实现双进程守护
本文分为两个部分,第一部分为双Service守护,第二部分为双进程守护 第一部分: 一.Service简介:Java.lang.Object ↳Android.content.Context ↳an ...
- 创建webservice 用service.xml配置(复杂点的方法)
用Axis2实现Web Service,虽然可以将POJO类放在axis2/WEB-INF/pojo目录中直接发布成Web Service,这样做不需要进行任何配置,但这些POJO类不能在任何包中.这 ...
- [转帖]win10 .Net Runtime Optimization Service占用大量CPU资源解决方法
win10 .Net Runtime Optimization Service占用大量CPU资源解决方法 https://blog.csdn.net/cwg2552298/article/detail ...
- Servlet的Service方法和doget 和 dopost方法的区别,常见的错误解析
package com.sxt.in; import java.io.IOException; import javax.servlet.ServletException; import javax. ...
- service 方法和doGet、doPost方法的区别
Service方法和doGet和doPost方法的区别service: 可以处理get/post方式的请求,如果servlet 中有service方法,会优先调用service方法进行处理do ...
随机推荐
- Win8 X64下JDK版本切换问题
1:现在笔记本上安装的是,执行java -version: 2:现在又安装了,想通过修改环境变量,使JDK切换到1.6版本上 JDK的安装目录:D:\Java\ 修改环境变量: (1)JAVA_HOM ...
- The square chest
The square chest Sophia pressed the button in front of her, slamming her fist against it. The door r ...
- 避免ssh断开导致运行命令的终止:screen
事情是这样的,需要使用ssh登陆服务器,进行工程的编译,结果不知道什么原因ssh出现write failed:broken pipe,掉线了.反复实验了好几次还是这样(白花花的时间啊,又是config ...
- 如何允许外网可以连接mysql数据库
1.首先检查mysql所在服务器的防火墙,如果限制了外网对3306端口的连接,那么放开限制Linux服务器中执行 iptables -L 可以查看当前的防火墙规则iptables -F 可以清 ...
- HashMap Java Doc
原文 public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneab ...
- POJ3261-哈希
这个题让求至少出现K次的最大长度的子串,属于最大化最小值问题,首先应该想到二分求字串的长度,二分的过程是O(logN)的,注意judge的时候怎样判断是否满足情况以及满足情况后l,r的变化.可以给每一 ...
- Linux TCP/IP 协议栈之 Socket 的实现分析(一)
内核版本:2.6.37参考[作者:kendo的文章(基于内涵版本2.6.12)] 第一部份 Socket套接字的创建 socket 并不是 TCP/IP协议的一部份. 从广义上来讲,socket 是U ...
- hdu 5641 King's Phone(暴力模拟题)
Problem Description In a military parade, the King sees lots of new things, including an Andriod Pho ...
- python学习之路-1 python基础操作
本篇所涉及的内容 变量 常量 字符编码 用户交互input 格式化字符串 python的缩进规则 注释 初始模块 条件判断 循环 变量 变量的概念基本上和初中代数的方程变量是一致的,只是在计算机程序中 ...
- 訪问远程WAMP 下phpmyadmin
WAMP环境是一个非常优秀的webservice集成环境,它集成的phpmyadmin也是一款非常优秀的数据库訪问软件.wamp默认安装下,phpmyadmin工具仅仅能本地用,在站点开发中,数据库都 ...