1. 指定act<wbr>ion 和type<br>
// SIM imp<wbr>ort<br>
Intent imp<wbr>ortIntent = new Intent(Intent.ACT<wbr>ION_VIEW);<br>
imp<wbr>ortIntent.setType("vnd.android.cursor.item/sim-contact");<br>
imp<wbr>ortIntent.setClassName("com.android.phone", "com.android.phone.SimContacts");<br>
menu.add(0, 0, 0, R.string.imp<wbr>ortFromSim)<br>
.setIcon(R.drawable.ic_menu_imp<wbr>ort_contact)<br>
.setIntent(imp<wbr>ortIntent);<br><br>
2. 指定act<wbr>ion, da<wbr>ta和type<br>
(1)隐式查找type<br>
示例代码:<br>
uri: content://simcontacts/simPeople/(id)<br>
intent = new Intent("android.intent.act<wbr>ion.SIMEDIT",uri);<br>
startActivity(intent);<br><br>
程序会很据da<wbr>ta中的uri去查找匹配的type(必须的) <br>
provider中的getType() <br>
case SIM_PEOPLE_ID:<br>
return "vnd.android.cursor.item/sim-contact"; <br><br>
配置文件中的filter设定 <br>
AndroidManifest.xml<br>
<intent-filter><br>
<act<wbr>ion android:name="android.intent.act<wbr>ion.SIMEDIT" /><br>
<category android:name="android.intent.category.DEFAULT" /> <br>
<da<wbr>ta android:mimeType="vnd.android.cursor.item/sim-contact" /><br>
</intent-filter><br><br>
也可以自己设定type,但只能使用 setDataAndType() <br><br>
3. 其他设定intent的属性方式<br>
Intent setComponent(ComponentName component) <br>
Intent setClassName(Context packageContext, String className)<br>
Intent setClassName(String packageName, String className)<br>
Intent setClass(Context packageContext, Class<?> cls)<br><br><br>
注:<br>
1. intent的实现代码<br>
public Intent setData(Uri da<wbr>ta) {<br>
mData = da<wbr>ta;<br>
mType = null;<br>
return this;<br>
}<br><br>
public Intent setType(String type) {<br>
mData = null;<br>
mType = type;<br>
return this;<br>
}<br><br>
public Intent setDataAndType(Uri da<wbr>ta, String type) {<br>
mData = da<wbr>ta;<br>
mType = type;<br>
return this;<br>
}<br><br>
2. 如果指定da<wbr>ta,而type为null,则会提示找不到activity<br>
这时需要在putExtra()中指定uri<br></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
分享到:
相关推荐
Android Intent 使用总结 Android Intent 是 Android 组件之间通讯的核心机制,它负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述。Android 则根据 Intent 的描述,找到对应的组件,将 Intent 传递给...
总结起来,Intent在Android应用开发中起着至关重要的作用,它连接了不同组件,实现了灵活的数据传递。`startActivityForResult`是实现交互式组件通信的有效工具,而Bundle则扩展了Intent的数据承载能力,使其能传递...
Intent分为显式Intent和隐式Intent,而"Intent总结04 Data和Type属性"主要聚焦于Intent的数据(data)和类型(type)两个关键属性,它们在创建Intent时发挥着至关重要的作用。 1. **Intent的数据(data)**: Intent的数据...
本文将深入探讨Intent中的Action属性,包括如何使用自定义Action和系统内置的Action。 一、Intent的基本结构 Intent由两部分组成:Action、Data、Category、Component和其他额外的数据。Action是Intent的核心部分...
总结,Intent是Android系统中连接各个组件的桥梁,理解并熟练使用Intent对于开发Android应用至关重要。在实际项目中,Intent不仅可以用于启动Activity和Service,还可以用于启动BroadcastReceiver,实现各种组件间的...
下面是对Intent的详细总结: 1. **Intent的基本类型** - 显式Intent:指定要启动的具体组件(Activity或Service),通过类名或组件的ComponentName来明确指定。 - 隐式Intent:不指定具体组件,而是定义一个行动...
总结起来,Intent在Android开发中扮演着至关重要的角色,它不仅连接了应用内的各个组件,还实现了应用间的交互。理解和熟练使用Intent,是每个Android开发者必备的技能之一。通过合理的Intent设计,我们可以构建出...
总结来说,实验10涵盖了Android应用开发中的Intent通信机制、系统服务调用(拨打电话和发送短信)、权限管理以及用户界面交互等多个核心知识点。通过这个实验,开发者可以深入理解Android应用的运行机制,并提升实际...
- 要指定完整的Data(包括Type和具体的URI),必须使用 `setDataAndType()` 方法,避免先后调用 `setData()` 和 `setType()` 导致值被覆盖。 10. **Scheme 的匹配**: - Scheme的匹配规则也需要遵循Intent与`...
总结,使用Intent打开网页是Android开发中的常见操作,既可以调用系统浏览器实现跨应用的浏览,也可以借助WebView在应用内部加载网页。选择哪种方式取决于应用场景,如需保持用户在应用内的体验,WebView是理想选择...
总结起来,Intent是Android系统中实现组件间通信的关键工具。显式Intent通过指定目标组件进行直接调用,而隐式Intent则依赖于Intent Filter的匹配来寻找合适的响应者。熟练掌握这两种Intent以及Intent Filter的使用...
总结一下Intent概念
以上是Intent的基本用法,但Intent还有更多高级用法,如隐式Intent(用于启动未明确指定组件的Activity或Service)、显式Intent(指定确切的组件)、捆绑数据、使用Intent Filter等。理解并熟练使用Intent是构建...
在Android应用开发中,Intent是一种强大的机制,用于在应用程序组件之间进行通信。本文将深入探讨“显式意图”(Explicit Intent),这是Intent的一种类型,它明确指定了接收者组件。 **显式意图详解** 显式意图是...
总结,Intent是Android中至关重要的组件通信工具,理解并熟练运用Intent对于开发高效、稳定的Android应用至关重要。通过IntentDemo项目的学习,开发者可以更深入地掌握Intent的工作原理和应用场景。
总结起来,Intent和IntentFilter是Android组件间通信的关键桥梁。Intent负责携带请求和数据,IntentFilter则负责匹配和筛选Intent,确保正确的组件得到请求。理解并熟练运用这两者,对于开发高效、灵活的Android应用...
在Android开发中,Intent是一种非常重要的组件...总结,Intent在Android开发中起着桥梁的作用,连接起各个组件,使得组件间能够高效地通信和协作。理解并熟练掌握Intent的使用,是提升Android应用开发能力的关键步骤。
总结,Intent在Android开发中扮演着至关重要的角色,无论是启动组件、传递数据还是实现组件间的通信,都离不开Intent的使用。理解和熟练掌握Intent的用法,是成为一名合格的Android开发者的基础。通过不断地实践和...