Android intent-filter 简单用法

对电话拨号盘的过滤,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> 

这样,在相册中点击分享按钮的时候,就会弹出分享应用选择对话框: 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。