android broadcast实例

1、广播类

package com.g4vision.broadcastreceiver;

import com.g4vision.R;
import com.g4vision.common.CONSTANT;
import com.g4vision.common.Utils;
import android.app.Notification;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;

/**
 * 用于通知终端是否在线,如果在线,则在通知栏显示在线图标,否则不显示图标
 * @author zhangfang
 *
 */
public class MVRBroadcastReceiver extends BroadcastReceiver{
	private Context context;
	private Intent intent;
	@Override
	public void onReceive(Context context, Intent intent) {
		// TODO Auto-generated method stub
		this.context=context;
		this.intent=intent;
		Bundle bundle=intent.getExtras();
		String tmpInlineStatus=bundle.getString(CONSTANT.MVR_BROADCAST_CMD);
		//System.out.println("接收到的消息为"+tmpInlineStatus);
		if(tmpInlineStatus.equalsIgnoreCase("inline")){
			setInlineStatus();
		}else if(tmpInlineStatus.equalsIgnoreCase("uninline")){
			Utils.mNM.cancel(CONSTANT.INLINE_STATUS_ID);
		}else if(tmpInlineStatus.equalsIgnoreCase("picTransmitting")){
			setPicTransmittingStatus();
		}
	}	
	/**
	 * 设置在线图标
	 */
	private void setInlineStatus()
	{
		Notification m=new Notification();
		m.icon=R.drawable.notification_inline_status;
		m.tickerText="inline";
		m.when=System.currentTimeMillis();
		//m.defaults |= Notification.DEFAULT_SOUND;
       // m.vibrate = new long[] { 100, 250, 100, 500};       
        PendingIntent p=PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        m.setLatestEventInfo(context, "Inline", "I am inline", p);
        Utils.mNM.notify(CONSTANT.INLINE_STATUS_ID, m);
	}
	
	/**
	 * 指示图片正在传输
	 */
	private void setPicTransmittingStatus()
	{
		//初始化NotificationManager对象            
    	Notification mNotification=new Notification();//实例化mNotification
        	//设置传输状态的图标
    	mNotification.icon=R.anim.stat_transmit_upload;
        mNotification.tickerText="Pic Transmit";
        mNotification.when=System.currentTimeMillis();
        //通知到来时发出默认的声音,震动
      	//mNotification.defaults |= Notification.DEFAULT_SOUND;
        //mNotification.vibrate = new long[] { 100, 250, 100, 500};
        PendingIntent transmitPendingIntent=PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
        mNotification.setLatestEventInfo(context, "Transmit", "pic is transmitting", transmitPendingIntent);
        Utils.mNM.notify(CONSTANT.PIC_TRANSMITTING_ID, mNotification);
	}
	
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值