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


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

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

    全部Service代码

    package com.app.myservice;
    
    import org.json.JSONException;
    import org.json.JSONObject;
    
    import com.app.util.MyApplication;
    
    import android.R.integer;
    import android.app.Notification;
    import android.app.NotificationManager;
    import android.app.PendingIntent;
    import android.app.Service;
    import android.content.Context;
    import android.content.Intent;
    import android.os.IBinder;
    
    public class ServiceDemo02 extends Service{
    	Context context;
    	@Override
    	public void onCreate() {
    		// TODO Auto-generated method stub
    		super.onCreate();
    		context = getApplicationContext();
    	}
    	//创建通知
    	public void CreateInform() {
    		//定义一个PendingIntent,当用户点击通知时,跳转到某个Activity(也可以发送广播等)
    		Intent intent = new Intent(context,MainActivity.class);
    		PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
    		
    		//创建一个通知
    		Notification notification = new Notification(R.drawable.icon, "巴拉巴拉~~", System.currentTimeMillis());
    		notification.setLatestEventInfo(context, "点击查看", "点击查看详细内容", pendingIntent);
    		
    		//用NotificationManager的notify方法通知用户生成标题栏消息通知
    		NotificationManager nManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
    		nManager.notify(100, notification);//id是应用中通知的唯一标识
    		//如果拥有相同id的通知已经被提交而且没有被移除,该方法会用更新的信息来替换之前的通知。
    	}
    
    	@Override
    	public void onStart(Intent intent, int startId) {
    		// TODO Auto-generated method stubm
    		super.onStart(intent, startId);
    		CreateInform();
    	}
    
    	@Override
    	public void onDestroy() {
    		// TODO Auto-generated method stub
    		super.onDestroy();
    	}
    
    	@Override
    	public IBinder onBind(Intent intent) {
    		// TODO Auto-generated method stub
    		return null;
    	}
    
    }
    

    效果图





  • 相关阅读:
    hdoj2159【二位费用背包】
    POJ2367【拓扑排序】
    POJ2371【水题】
    POJ2369【循环节】
    POJ2370【水题】
    POJ2365【几何】
    POJ2366【二分】
    POJ1276【多重背包】
    瞎说一波3种基本背包问题【希望巨巨们指出错误】
    Codeforces 550B 【暴力】
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3370827.html
Copyright © 2020-2023  润新知