Android Services学习--Notification

Android Services学习--Notification


package com.lxt008;

import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class Activity01 extends Activity
{
	Button				m_Button1, m_Button2, m_Button3, m_Button4;

	//声明通知(消息)管理器
	NotificationManager	m_NotificationManager;
	Intent				m_Intent;
	PendingIntent		m_PendingIntent;
	//声明Notification对象
	Notification		m_Notification;


	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState)
	{
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		//初始化NotificationManager对象
		m_NotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

		//获取4个按钮对象
		m_Button1 = (Button) findViewById(R.id.Button01);
		m_Button2 = (Button) findViewById(R.id.Button02);
		m_Button3 = (Button) findViewById(R.id.Button03);
		m_Button4 = (Button) findViewById(R.id.Button04);

		//点击通知时转移内容
		m_Intent = new Intent(Activity01.this, Activity02.class);
		//主要是设置点击通知时显示内容的类
		m_PendingIntent = PendingIntent.getActivity(Activity01.this, 0, m_Intent, 0);
		//构造Notification对象
		m_Notification = new Notification();

		m_Button1.setOnClickListener(new Button.OnClickListener() {
			public void onClick(View v)
			{
				//设置通知在状态栏显示的图标
				m_Notification.icon = R.drawable.img1;
				//当我们点击通知时显示的内容
				m_Notification.tickerText = "Button1通知内容...........";
				//通知时发出默认的声音
				m_Notification.defaults = Notification.DEFAULT_SOUND;
				//设置通知显示的参数
				m_Notification.setLatestEventInfo(Activity01.this, "Button1", "Button1通知", m_PendingIntent);
				//可以理解为执行这个通知
				m_NotificationManager.notify(0, m_Notification);
			}
		});

		m_Button2.setOnClickListener(new Button.OnClickListener() {
			public void onClick(View v)
			{

				m_Notification.icon = R.drawable.img2;
				m_Notification.tickerText = "Button2通知内容...........";
				//通知时震动
				m_Notification.defaults = Notification.DEFAULT_VIBRATE;
				m_Notification.setLatestEventInfo(Activity01.this, "Button2", "Button2通知", m_PendingIntent);
				m_NotificationManager.notify(0, m_Notification);
			}
		});

		m_Button3.setOnClickListener(new Button.OnClickListener() {
			public void onClick(View v)
			{
				m_Notification.icon = R.drawable.img3;
				m_Notification.tickerText = "Button3通知内容...........";
				//通知时屏幕发亮
				m_Notification.defaults = Notification.DEFAULT_LIGHTS;
				m_Notification.setLatestEventInfo(Activity01.this, "Button3", "Button3通知", m_PendingIntent);
				m_NotificationManager.notify(0, m_Notification);
			}
		});

		m_Button4.setOnClickListener(new Button.OnClickListener() {
			public void onClick(View v)
			{
				m_Notification.icon = R.drawable.img4;
				m_Notification.tickerText = "Button4通知内容..........";
				//通知时既震动又屏幕发亮还有默认的声音
				m_Notification.defaults = Notification.DEFAULT_ALL;
				m_Notification.setLatestEventInfo(Activity01.this, "Button4", "Button4通知", m_PendingIntent);
				m_NotificationManager.notify(0, m_Notification);
			}
		});
	}
}

一、第一种比较实用
                                //点击通知时转移内容
                                m_Intent = new Intent(Activity01.this, Activity02.class);
                                //主要是设置点击通知时显示内容的类
                                m_PendingIntent = PendingIntent.getActivity(Activity01.this, 0, m_Intent, 0);                           
                                //设置通知在状态栏显示的图标
				m_Notification.icon = R.drawable.img1;
				//当我们点击通知时显示的内容
				m_Notification.tickerText = "Button1通知内容...........";
				//通知时发出默认的声音
				m_Notification.defaults = Notification.DEFAULT_SOUND;
				//设置通知显示的参数
				m_Notification.setLatestEventInfo(Activity01.this, "Button1", "Button1通知", m_PendingIntent);
				//可以理解为执行这个通知
				m_NotificationManager.notify(0, m_Notification);
通知栏伴有音效提示,显示图标,Button1通知内容...................,下拉通知栏时,显示APP的ICON及标题Button1,内容 Button1通知。点击通知内容时跳转到另一个Activity

Pendingintent,一般用在 Notification上,可以理解为延迟执行的intent,PendingIntent是对Intent一个包装。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值