public class MainActivity extends AppCompatActivity implements View.OnClickListener{ private NotificationManager manager;//通知控制类 private int Notification_ID; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); fab.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) .setAction("Action", null).show(); } }); findViewById(R.id.btn_send).setOnClickListener(this); findViewById(R.id.btn_cancel).setOnClickListener(this); manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } @Override public void onClick(View v) { switch(v.getId()){ case R.id.btn_send:{ sendNotification(); break; } case R.id.btn_cancel:{ cancelNotification(); break; } } } private void sendNotification(){ Intent intent = new Intent(this, MainActivity.class); PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 0); Notification.Builder builder = new Notification.Builder(this); builder.setSmallIcon(R.drawable.x); builder.setTicker("Hello"); builder.setWhen(System.currentTimeMillis()); builder.setContentTitle("通知栏通知 "); builder.setContentText("我来自sendNotification"); builder.setContentIntent(pendingIntent);//点击后的意图 // builder.setDefaults(Notification.DEFAULT_SOUND);//提示声音 // builder.setDefaults(Notification.DEFAULT_LIGHTS);//提示指示灯 // builder.setDefaults(Notification.DEFAULT_VIBRATE);//震动 builder.setDefaults(Notification.DEFAULT_ALL);//全部 Notification notification = builder.build();//4.1以上用着个 manager.notify(Notification_ID, notification); } private void cancelNotification(){ manager.cancel(Notification_ID); } }
NotificationManager
最新推荐文章于 2023-02-10 11:24:25 发布