android通过服务实现消息推送

本文介绍了在Android项目中如何利用Service和Notification实现后台消息推送。通过创建Service并结合线程,保持服务运行,定时向服务器发送请求获取实时更新。同时提到了android-async-http-master开源框架在其中的应用。
摘要由CSDN通过智能技术生成

这里运用到的andorid知识模块主要有Notification和Service,和一个android-async-http-master开源框架

android项目中,有时会有这样一种需求:客户每隔一段时间,就像服务器发送一个请求,以获取某些重要的、实时更新的消息。比如天气预报。

如何让应用实现在后台一直处于运行状态,并且每个一段时间就向服务器发一个请求?android里的四大组件之一:服务,就为我们提供了这种功能。

因此,我们可以尝试在服务里边定义一个线程,只要服务不停止,线程就一直在运行,让它每隔一段时间,就向服务器发送一个请求。

我们来看一下核心代码

1.在Activity中,我们可以通过startService()来启动服务

public void open(View view) {
		Intent intent = new Intent(this, PushSmsService.class);
		// 启动服务
		startService(intent);
	}

2.这里我们需要自定义一个服务类,去继承android的Service类

/**
 * 
 * 短信推送服务类,在后台长期运行,每个一段时间就向服务器发送一次请求
 * 
 * @author jerry
 * 
 */
public class PushSmsService extends Service {
	private MyThread myThread;
	private NotificationManager manager;
	private Notification notification;
	private PendingIntent pi;
	private AsyncHttpClient client;
	private boolean flag = true;

	@Override
	public IBinder onBind(Intent intent) {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public void onCreate() {
		System.out.println("oncreate()");
		this.client = new AsyncHttpClient();
		this.myThread = new MyThread();
		this.myThread.start();
		super.onCreate();
	}

	@Override
	public void onDestroy() {
		this.flag = false;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值