zoukankan      html  css  js  c++  java
  • 通知栏构建和取消的基本认识

    思路图

    MainActivity.class

    public class MainActivity extends AppCompatActivity implements View.OnClickListener{
        NotificationManager manager;
        int notification_ID = 0;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
             findViewById(R.id.send_message).setOnClickListener(this);
             findViewById(R.id.cancel_message).setOnClickListener(this);
            manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);  //取得通知控制类
    
    
        }
    
        @Override
        public void onClick(View v) {
            switch (v.getId()){
                case R.id.send_message:{
                    send_message_method();
                    break;
                }
                case R.id.cancel_message:{
                    cancel_message_method();
                    break;
                }
            }
        }
    
        //构建发送通知方法
        private void cancel_message_method() {
            manager.cancel(notification_ID);
        }
        //取消通知栏
        private void send_message_method() {
    
            Intent itent = new Intent(this,MainActivity.class);
            PendingIntent pitent = PendingIntent.getActivity(this,0,itent,0);
            //构建Notification的builder构建器
            Notification.Builder builder = new Notification.Builder(this);
            builder.setSmallIcon(R.mipmap.ic_launcher);     //设置图标
            builder.setTicker("你好,世界!");   //设置手机状态栏提示信息
            builder.setWhen(System.currentTimeMillis());    // 设置时间
            builder.setContentTitle("世界游戏之标题");     //设置标题
            builder.setContentText("鹅鹅鹅,曲项向天歌!");   //设置通知内容
    
            builder.setContentIntent(pitent); //设置点击后的意图
    //        builder.setDefaults(Notification.DEFAULT_LIGHTS);//设置提示指示灯
    //        builder.setDefaults(Notification.DEFAULT_SOUND);//设置提示声音
    //        builder.setDefaults(Notification.DEFAULT_VIBRATE);//设置提示震动
            builder.setDefaults(Notification.DEFAULT_ALL);  //设置全部都有
            Notification notification =  builder.build();//4.1以上
            manager.notify(notification_ID,notification);
    
        }
    }
    

     注意设置Defaults时候的权限。振动,声音权限。

    <uses-permission android:name="ANDROID.PERMISSION.FLASHLIGHT" />
    <uses-permission android:name="android.permission.VIBRATE"/>

     

  • 相关阅读:
    让你的App飞一会
    Event in Backbone
    Event in Zepto
    【不怕坑】之 Node.js加密 C#解密
    结对项目:日程管理(四)
    结对项目:日程管理(三)
    结对项目:日程管理(二)
    结对项目:日程管理(一)
    当代大学生的痛点
    软件需求分析
  • 原文地址:https://www.cnblogs.com/zmaibbs7/p/4887932.html
Copyright © 2011-2022 走看看