本人邮箱:[email protected],欢迎交流讨论。
欢迎转载,转载请注明网址:http://www.cnblogs.com/JohnTsai/p/3991792.html
- 知识点:Intents 和 Intent Filters的定义和作用以及用法。
- Intent
Intent这个单词的意思是“意图”,正如它的意思,它在Android中就是表达了实现某项功能的意图(intention to do an action)。
定义:
Intent是传送消息的对象(messaging object),传送的是要求其他应用组件某些功能的消息。Intent的作用范围可以是
同一Android应用内,也可以是不同应用间。例如我们经常使用的微信扫一扫功能就开启了系统拍摄照片的Activity。
Intent是 android.content.Intent类型的对象,它可以通过Bundle携带数据。
用途:
1.开启activity (start an activity)
1 //启动方法: 2 3 startActivity(Intent intent) 4 5 startActivityForResult(Intent intent)
2.开启service(start a service)
1 // 启动方法: 2 3 startService(Intent service) 4 bindService (Intent service, ServiceConnection conn, int flags)
3.释放broadcast(deliver a broadcast)
//启动方法 sendBroadcast(Intent intent) sendBroadcast(Intent intent, String receiverPermission) sendOrderedBroadcast(Intent intent, String receiverPermission) sendOrderedBroadcast(Intent intent, String receiverPermission, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras) sendStickyBroadcast(Intent intent) sendStickyOrderedBroadcast(Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras)
类型
Intent分为两种类型:显示Intent(Explicit intents )和隐式Intent(Implicit intents)
显示Intent指定通过名字(完全限定类名the fully-qualified class name)启动组件。一般在我们自己的app中使用明确的Intent来启动组件,因为我们知道自己的app中activity或service的类名。
举个例子:
作为对用户操作的反馈,开启一个新的activity或是开启了后台下载文件的service。
隐式Intent没有要求具体的组件的类名字,取而代之的是声明了一个一般功能的Intent,其他应用的组件会处理。
To be Continued.........
时间: 2024-10-08 00:22:16