Android Notifacation使用

            NotificationManager mNotificationManager = (NotificationManager) myContext.getSystemService(NOTIFICATION_SERVICE);
            long when = System.currentTimeMillis();
            Notification notification = new Notification(resource, tickerText, when);
            /*
             * Notification.FLAG_AUTO_CANCEL ,该标志表示当用户点击 Clear 之后,能够清除该通知
             */
            notification.flags = Notification.FLAG_ONGOING_EVENT;
        notification.flags = Notification.FLAG_NO_CLEAR;  //永久存在,不能删除

       notification.defaults = Notification.DEFAULT_SOUND;  //声音
        notification.defaults = Notification.DEFAULT_LIGHTS;  //灯光
        notification.defaults = Notification.DEFAULT_VIBRATE;  //震动
          
            /*
             * 创建点击事件开启Activity对象
             *
             * 如果要以该Intent启动一个Activity,一定要设置 Intent.FLAG_ACTIVITY_NEW_TASK 标记
             * Intent.FLAG_ACTIVITY_CLEAR_TOP :如果在当前Task中,有要启动的Activity,
             * 那么把该Acitivity之前的所有Activity都关掉,并把此Activity置前以避免创建Activity的实例
             */
            Intent notificationIntent = new Intent(myContext, VoiceIdentifyActivity.class);
            notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP|Intent.FLAG_ACTIVITY_NEW_TASK);
           
            /*
             * 点击启动Activity  和startActivity()同含义
             * 表示如果该描述的PendingIntent已存在,则改变已存在的PendingIntent的Extra数据为新的PendingIntent的Extra数据。
             */
            PendingIntent contentIntent = PendingIntent.getActivity(myContext, 0 , notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT);
            notification.setLatestEventInfo(myContext, contentTitle, contentText,contentIntent);
           
            /*
             * 用mNotificationManager的notify方法通知用户生成标题栏消息通知
             */
            mNotificationManager.notify(R.string.app_name, notification);
       

猜你喜欢

转载自mickey-hou.iteye.com/blog/1675973