Intent是Android程序中各组件之间进行交互的主要方式,它不仅可以指明当前组件想要执行的动作,还可以在不同组件之间传递数据,Intent一般可以被用于启动活动,启动服务以及发送广播等场景

Android的应用程序包含三个重要的组件:activity,service,broadcastReceiver,它们采用了一致的方式来启动,那就是Intent

而Intent大概可以分为两种,一种为显性,一种为隐性

button.setOnClickListener(newView.OnClickListener(){@Overridepublicvoidonclick(Viewv){Intenti=newIntent(FirstActivity.this,SecondActivity.class);startActivity(intent);}})

首先构建了一个Intent,传入FirstActivity.this作为上下文,传入SecondActivity.class作为目标活动最后通过statActivity来打开,这就是显式Intent

button.setOnClickListener(newView.OnClickListener(){@Overridepublicvoidonclick(Viewv){Intenti=newIntent("com.example.activitytest.ACTION_START");i.addCategory("com.example.activitytest.MY_CATEGORY");startActivity(intent);}})

相比于显示Inten,隐式更为含蓄和委婉,指定了一系列更为抽象的action和category等信息

同时在XML文件中也应加入category

在Intent 中只能有一个action,但是可以有多个category