对电话拨号盘的过滤,mainfest配置文件中Activity如下配置:
<activity Android:name=".TestActivity" android:label="@string/app_name">
<intent-filter>
<action Android:name="android.intent.action.CALL_BUTTON" />
<category Android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
效果,点击电话按钮,弹出选择应用对话框,包含我们自己定义应用:
发送短信的时候,调用自定义应用:
<activity Android:name=".TestActivity" android:label="@string/app_name">
<intent-filter>
<action Android:name="android.intent.action.SENDTO" />
<data Android:scheme="smsto" />
<category Android:name="android.intent.category.DEFAULT" />
</intent-filter>
效果如下,在友录通讯录中点击发送短信按钮,弹出选择应用对话框,包含我们自定义应用:
自定义程序调用发送短信功能:
Intent sendIntent = new Intent(Intent.ACTION_SENDTO, Uri
.parse("sms://"));
startActivity(sendIntent);
同时,在mainfest配置文件中添加intent-filter,增加发送短信的Intent功能:
<activity Android:name=".TestActivity" android:label="@string/app_name">
<intent-filter>
<action Android:name="android.intent.action.SENDTO" />
<data Android:scheme="sms" />
<category Android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
效果如下,在自己写的程序中点击按钮,调用发送短信功能:
选择自己的应用,进入到TestActivity。
对http请求的Intent过滤:
<activity Android:name=".TestActivity" android:label="@string/app_name">
<intent-filter>
<action Android:name="android.intent.action.VIEW" />
<data Android:scheme="http" />
<category Android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
效果如下,点击http连接的时候,弹出选择应用的对话框:
过滤分享图片功能实现:
<activity Android:name=".TestActivity" android:label="@string/app_name">
<intent-filter>
<action Android:name="android.intent.action.SEND" />
<data Android:mimeType="image/*" />
<category Android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
这样,在相册中点击分享按钮的时候,就会弹出分享应用选择对话框:
分享到:
相关推荐
在本教程中,我们将深入探讨Intent Filter的使用方法。 首先,Intent Filter的配置主要在AndroidManifest.xml文件中进行。通过在、、或标签内添加<intent-filter>子标签,我们可以为每个组件定义其能够接收的Intent...
当发送一个隐式Intent时,AMS会遍历所有声明了对应Intent-filter的组件,使用PackageParser的matchIntent()方法进行匹配,最终找到最合适的组件。 1. 匹配流程: - AMS接收到Intent后,调用`resolveActivity()`...
下面我们将深入讨论ACTION_SEND的工作原理和使用方法。 1. ACTION_SEND Intent的基本结构: 创建ACTION_SEND Intent时,你需要设置ACTION字段为"android.intent.action.SEND"。此外,还需要设置数据类型(MIME type...
在Android开发中,Activity是应用程序的基本组件之一,用于呈现用户界面并与用户交互。..."AliasDemo"项目为理解这一机制提供了实践案例,通过学习和分析该项目,可以更好地掌握Activity别名的使用方法。
在Android开发中,Intent是一种非常重要的组件,它用于在应用程序的不同组件之间传递消息,实现活动...通过"Android代码-Intent切换.zip"中的示例,你可以更深入地了解Intent的各种用法,并将其应用到自己的项目中。
4. 使用Intent创建意图过滤器(Intent Filter): - 在AndroidManifest.xml中,为Activity或BroadcastReceiver添加过滤器,定义能响应的Action、Data和Category。 - 示例: ```xml <activity android:name="....
- 要指定完整的Data(包括Type和具体的URI),必须使用 `setDataAndType()` 方法,避免先后调用 `setData()` 和 `setType()` 导致值被覆盖。 10. **Scheme 的匹配**: - Scheme的匹配规则也需要遵循Intent与`...
### ZX-Android-Intent详解 #### 一、Intent的基本概念及作用 在Android开发中,`Intent`扮演着至关重要的角色。它是一个用于描述要执行的动作的抽象对象,主要用于协助完成Android应用程序内部不同组件间的通信。...
总结,Intent是Android系统中连接各个组件的桥梁,理解并熟练使用Intent对于开发Android应用至关重要。在实际项目中,Intent不仅可以用于启动Activity和Service,还可以用于启动BroadcastReceiver,实现各种组件间的...
Intent是Android系统中一个至关重要的概念,它是应用程序之间通信的主要桥梁。Intent不仅仅用于启动Activity,还...通过Intent-Demo示例,开发者可以更好地实践和学习Intent的各种用法,提升自己的Android编程技能。
总结一下,隐藏Android应用图标并使用其他应用启动的方法包括: 1. 修改AndroidManifest.xml,移除入口Activity的`ACTION_MAIN`和`CATEGORY_LAUNCHER` intent-filter。 2. 创建一个新的Activity或Service,并添加一...
2. **AndroidManifest配置**:在Android应用中,Deeplink的配置主要涉及`<activity>`标签内的`<intent-filter>`。例如,添加`<data>`子标签来指定scheme、host和路径,这样当用户点击一个匹配此规则的URL时,系统会...
使用`sendBroadcast(Intent)`、`sendOrderedBroadcast(Intent, String)`或`sendBroadcastAsUser(Intent, UserHandle, String)`方法发送广播。注册广播接收器有两种方式:在AndroidManifest.xml中静态注册或在代码中...
在Android开发中,跨应用通讯是一项重要的功能,它允许不同应用程序之间进行数据交换和功能调用。本篇文章将深入探讨...正确理解和使用Intent、Intent-Filter以及数据处理,可以创建出功能丰富且安全的Android应用。
以上是Intent的基本用法,但Intent还有更多高级用法,如隐式Intent(用于启动未明确指定组件的Activity或Service)、显式Intent(指定确切的组件)、捆绑数据、使用Intent Filter等。理解并熟练使用Intent是构建...
在 Android 中使用隐式 Intent 需要在 AndroidManifest.xml 文件中,首先被调用的 Activity 要有一个带有 `<intent-filter>` 并且包含 `<action>` 的 Activity,设定它能处理的 Intent,并且 category 设为默认值。...
使用putExtra()方法可以将数据附加到Intent中,然后在接收端使用getExtra()系列方法获取这些数据: ```java // 发送端 Intent intent = new Intent(this, TargetActivity.class); intent.putExtra("key", ...