Android开发学习之Notification通知的简单实现
来源:互联网 发布:杂诗 王维 应知赏析 编辑:程序博客网 时间:2024/05/21 07:53
Notification,顾名思义就是通知、提醒的意思。那么我们今天就来做这样一个通知。
在Android中实现通知,需要借助NotificationManager和Notification类。对于UI布局,我们采用一个最为简单的形式,即两个按钮,一个用来打开通知,一个用来关闭通知。布局代码如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/LinearLayout1" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <Button android:id="@+id/BtnStart" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/StartNotification" /> <Button android:id="@+id/BtnStop" android:layout_width="284dp" android:layout_height="wrap_content" android:text="@string/StopNotification" /></LinearLayout>同样地,后台控制代码如下:
package com.Android.Notification;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.app.Activity;import android.app.Notification;import android.app.NotificationManager;import android.app.PendingIntent;import android.content.Intent;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity {Button BtnStart,BtnStop;Notification n;NotificationManager nm;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);String Service=NOTIFICATION_SERVICE;nm=(NotificationManager)getSystemService(Service);n=new Notification();n.icon=R.drawable.ic_launcher;n.tickerText="Android4.2版本更新啦";n.when=System.currentTimeMillis();n.flags|=Notification.DEFAULT_LIGHTS;n.flags|=Notification.DEFAULT_SOUND;n.flags|=Notification.FLAG_SHOW_LIGHTS;n.ledOnMS=500;n.ledOffMS=1000;n.sound=Uri.parse("file:///"+Environment.getExternalStorageDirectory().getPath()+"/Audio/秋千坠.mp3");BtnStart=(Button)findViewById(R.id.BtnStart);BtnStart.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View arg0) { Intent intent = new Intent(MainActivity.this,MainActivity.class); PendingIntent pi = PendingIntent.getActivity(MainActivity.this, 0, intent, 0); n.setLatestEventInfo(MainActivity.this, "Android4.2版本更新啦!", "立即升级", pi); nm.notify(1, n);}});BtnStop=(Button)findViewById(R.id.BtnStop);BtnStop.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View arg0) {nm.cancel(1);}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}程序运行效果如下图所示:
我想到这里你已经明白了什么是通知,联系到国内Android市场的现状,你一定明白了手机里那些广告是怎么回事了吧,呵呵,如果我们把一个安卓程序反编译,然后在其中加入这种推荐性的通知,反倒不失为一种营销的手段啊,当然,这么做是不对啊啦,哈哈。
- Android开发学习之Notification通知的简单实现
- Android开发之Notification(通知)
- Android学习之通知Notification
- Android开发笔记之notification消息推送 通知栏的实现
- android学习之路之通知-Notification
- Android开发之通知栏Notification详解
- android开发之notification通知完全解析
- Android开发之Notification 通知栏
- Android开发之通知栏Notification详解
- Android的Notification通知的简单实用
- Android学习之Notification的简单使用
- 《老罗Android》学习之通知 notification
- Android基础学习之Notification(通知)
- Android之通知栏Notification全面学习
- Android API- Notification(通知)的简单使用
- android之Notification通知
- android之Notification通知
- android之Notification通知
- 单例模式详解
- Erlang学习:A non-OTP supervisor for a non-OTP server
- zju2818
- zju2727
- zju2722
- Android开发学习之Notification通知的简单实现
- ubuntu中eclipse无法识别android手机问题
- zju2109
- 【转】c#可以在窗口的任一位置拖动窗口方法
- 关于人脸识别的一点记录
- PHP中source #N问题
- Java Socket服务器与客户端实例
- sulime破解
- iOS7新特征