Android利用服务Service创建标题栏通知

创建标题栏通知的核心代码

[java][/java] view plaincopy

  1. public void CreateInform() {
  2.     //定义一个PendingIntent,当用户点击通知时,跳转到某个Activity(也可以发送广播等)
  3.     Intent intent = new Intent(context,MainActivity.class);
  4.     PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
  5.     //创建一个通知
  6.     Notification notification = new Notification(R.drawable.icon, “巴拉巴拉~~”, System.currentTimeMillis());
  7.     notification.setLatestEventInfo(context, “点击查看”, “点击查看详细内容”, pendingIntent);
  8.     //用NotificationManager的notify方法通知用户生成标题栏消息通知
  9.     NotificationManager nManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
  10.     nManager.notify(100, notification);//id是应用中通知的唯一标识
  11.     //如果拥有相同id的通知已经被提交而且没有被移除,该方法会用更新的信息来替换之前的通知。
  12. }

全部Service代码

[java][/java] view plaincopy

  1. package com.app.myservice;
  2. import org.json.JSONException;
  3. import org.json.JSONObject;
  4. import com.app.util.MyApplication;
  5. import android.R.integer;
  6. import android.app.Notification;
  7. import android.app.NotificationManager;
  8. import android.app.PendingIntent;
  9. import android.app.Service;
  10. import android.content.Context;
  11. import android.content.Intent;
  12. import android.os.IBinder;
  13. public class ServiceDemo02 extends Service{
  14.     Context context;
  15.     @Override
  16.     public void onCreate() {
  17.         // TODO Auto-generated method stub
  18.         super.onCreate();
  19.         context = getApplicationContext();
  20.     }
  21.     //创建通知
  22.     public void CreateInform() {
  23.         //定义一个PendingIntent,当用户点击通知时,跳转到某个Activity(也可以发送广播等)
  24.         Intent intent = new Intent(context,MainActivity.class);
  25.         PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
  26.         //创建一个通知
  27.         Notification notification = new Notification(R.drawable.icon, “巴拉巴拉~~”, System.currentTimeMillis());
  28.         notification.setLatestEventInfo(context, “点击查看”, “点击查看详细内容”, pendingIntent);
  29.         //用NotificationManager的notify方法通知用户生成标题栏消息通知
  30.         NotificationManager nManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
  31.         nManager.notify(100, notification);//id是应用中通知的唯一标识
  32.         //如果拥有相同id的通知已经被提交而且没有被移除,该方法会用更新的信息来替换之前的通知。
  33.     }
  34.     @Override
  35.     public void onStart(Intent intent, int startId) {
  36.         // TODO Auto-generated method stubm
  37.         super.onStart(intent, startId);
  38.         CreateInform();
  39.     }
  40.     @Override
  41.     public void onDestroy() {
  42.         // TODO Auto-generated method stub
  43.         super.onDestroy();
  44.     }
  45.     @Override
  46.     public IBinder onBind(Intent intent) {
  47.         // TODO Auto-generated method stub
  48.         return null;
  49.     }
  50. }

效果图

 

标签