Android的消息通知--Notification

MainActivity是项目应用的主类

/**
 * @author Freedom
 * @2014 October 19th
 * 
 */

public class MainActivity extends Activity {

	// 声明Notification(通知)的管理者
	private NotificationManager mNotifyMgr;
	// 声明Notification(通知)对象
	private Notification notification;
	// 消息的唯一标示id
	public static final int mNotificationId = 001;

	// 声明一个启动按钮、关闭按钮
	private Button startbtn, cancelbtn;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		startbtn = (Button) findViewById(R.id.start);
		cancelbtn = (Button) findViewById(R.id.cancel);

		// 绑定startbtn按钮的onclick事件
		startbtn.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {
				// 创建一个即将要执行的PendingIntent对象
				Intent resultIntent = new Intent(MainActivity.this,
						ResultActivity.class);
				PendingIntent resultPendingIntent = PendingIntent.getActivity(
						MainActivity.this, 0, resultIntent,
						PendingIntent.FLAG_UPDATE_CURRENT);

				// 建立所要创建的Notification的配置信息,并有notifyBuilder来保存。
				notification = new Notification.Builder(MainActivity.this)
				// 触摸之后,通知立即消失
						.setAutoCancel(true)
						// 显示的时间
						.setWhen(System.currentTimeMillis())
						// 设置通知的小图标
						.setSmallIcon(R.drawable.smallicon)
						// 设置状态栏显示的文本
						.setTicker("状态栏提示消息")
						// 设置通知的标题
						.setContentTitle("通知的标题!")
						// 设置通知的内容
						.setContentText("通知的内容!")
						// 设置声音(系统默认的)
						// .setDefaults(Notification.DEFAULT_SOUND)
						// 设置声音(自定义)
						.setSound(
								Uri.parse("android.resource://org.crazyit.ui/"
										+ R.raw.msg))
						// 设置跳转的activity
						.setContentIntent(resultPendingIntent).build();

				// 创建NotificationManager对象,并发布和管理所要创建的Notification
				mNotifyMgr = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
				mNotifyMgr.notify(mNotificationId, notification);

			}
		});
		// 绑定cancelbtn按钮的onclick事件
		cancelbtn.setOnClickListener(new OnClickListener() {

			@Override
			public void onClick(View v) {

				mNotifyMgr.cancel(mNotificationId);

			}
		});
	}


跳转之后的ResultActivity

/**
 * 
 * @author Freedom
 * @2014 October 19th
 * 
 */
public class ResultActivity extends Activity {
	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.result);
		
		
	}

}

mainactivity的布局文件



   

resultactivity的布局文件



    
    



Manifest文件




    

    
        
            
                

                
            
        
        
        
    







你可能感兴趣的:(android)