标签:
import android.os.Bundle; import android.app.Activity; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.support.v4.app.NotificationCompat; import android.view.View; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void click(View v){ NotificationCompat.Builder builder = new NotificationCompat.Builder(this); //设置标题 builder.setContentTitle("通知标题"); builder.setContentText("这是内容。。。。。。。。。。。。。。"); //图标 builder.setSmallIcon(R.drawable.ic_launcher); //就是通知打开前在,页面可以看见的提示文字 builder.setTicker("一闪,搜索"); /** * 设置notification的样式 */ //大文本类型的通知 NotificationCompat.BigTextStyle big = new NotificationCompat.BigTextStyle(); big.setBigContentTitle("大的标题").bigText("大的内容"); //设置builder的样式 //builder.setStyle(big); //大图片的类型 NotificationCompat.BigPictureStyle bigimg = new NotificationCompat.BigPictureStyle(); Bitmap b = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher); bigimg.bigLargeIcon(b); //设置样式 //builder.setStyle(bigimg); /** * 可以显示更多文字 */ NotificationCompat.InboxStyle inboxStyle = new NotificationCompat.InboxStyle(); inboxStyle.addLine("一行文本"); inboxStyle.addLine("2行文本"); inboxStyle.addLine("3行文本"); inboxStyle.addLine("4行文本"); inboxStyle.addLine("5行文本"); builder.setStyle(inboxStyle); /** * 设置跳转,预跳转。可点可不点 * */ Intent intent = new Intent(this,MainActivity.class); /** * * pendingIntent:封装了Intent的预意图,表示 * 动作还没有发生,但是会一直保留着这个动作 * context 上下文 * requestCode:请求码 * intent :跳转意图 * Flag:标记 */ PendingIntent pendingIntent = PendingIntent.getActivity(this, 200, intent, PendingIntent.FLAG_ONE_SHOT); //PendingIntent.FLAG_NO_CREATE;一般用一个 builder.setContentIntent(pendingIntent); //服务来调用 /** * get 是系统的服务 * 传递Context.NOTIFICATION_SERVICE 可以获取一个管理Notification 的管理器 * */ NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); /** * builder构造器,可以建造哟个Notification对象 * */ Notification build = builder.build(); /** * 这个方法可以发出一个通知 * id 唯一标识的id号 * * notification 是需要发出通知的对象,(谁需要这个通知) */ manager.notify(1, build); } }
Android NotificationCompat通知消息
标签:
原文地址:http://my.oschina.net/zeroHigh/blog/516386