创建android Notification_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > 创建android Notification

创建android Notification

 2014/4/6 16:14:15  狗尾草1  博客园  我要评论(0)
  • 摘要:说明:根据项目选择的基础sdk,选择不同的创建Notification的方法1在androidsdk3.0之前直接通过newNotification的方法直接创建通知对象2在androidsdk3.0是通过Notification.Builer的方法间接配置Notification的属性和创建Notification的功能3在androidsdk4.0以上是通过android-support-v4.jar包中的NotificationCompat.Builder类
  • 标签:android 创建 not

说明:
根据项目选择的基础sdk,选择不同的创建Notification的方法
1 在android sdk 3.0 之前直接通过 new Notification的方法直接创建通知对象

2 在android sdk 3.0 是通过Notification.Builer的方法间接配置Notification的属性和创建Notification的功能

3 在android sdk4.0以上 是通过android-support-v4.jar 包中的NotificationCompat.Builder类,进行配置创建Notification对象


下面是一个实例,用NotificationCompat.Builder的方式创建Notification

 

NotificationCompat.Builder mBuilder =
                new NotificationCompat.Builder(this)
                .setSmallIcon(R.drawable.ic_launcher)
                .setContentTitle("My notification")
                .setContentText("Hello World!");
        
        //Notification.Builder builder=new Notification.Builder(this);
         
        mBuilder.setAutoCancel(true);
        mBuilder.setLights(Color.BLUE, 500, 500);
        long[] pattern = {500,500,500,500,500,500};
        mBuilder.setVibrate(pattern);
        
        Uri sound = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.messagevoice);
        mBuilder.setSound(sound);
        //mBuilder.setSound(sound);
        // Creates an explicit intent for an Activity in your app
        Intent resultIntent = new Intent(this, MessageShowActivity.class);

        // The stack builder object will contain an artificial back stack for the
        // started Activity.
        // This ensures that navigating backward from the Activity leads out of
        // your application to the Home screen.
        TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
        // Adds the back stack for the Intent (but not the Intent itself)
        //stackBuilder.addParentStack(MessageShowActivity.class);
        // Adds the Intent that starts the Activity to the top of the stack
        stackBuilder.addNextIntent(resultIntent);
        PendingIntent resultPendingIntent =
                PendingIntent.getActivity(this, 0, new Intent(this,MessageShowActivity.class), 0);
        
        mBuilder.setContentIntent(resultPendingIntent);
        NotificationManager mNotificationManager =
            (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
        // mId allows you to update the notification later on.
        mNotificationManager.notify(12, mBuilder.build());
      

 

发表评论
用户名: 匿名