在分享中,拨号,选择壁纸来源等系统打开方式中添加如自己的程序

来源:互联网 发布:9.9元天天特价淘宝包 编辑:程序博客网 时间:2024/05/22 05:16

自己的应用需要系统点击某个事件时相应,往系统中添加自己应用图标!

例如:点击拨号,则会出现快速拨号,系统自带拨号器等图标供选择!


这就需要使用Intent Filter!

以下转自:Android Intent Filter简单使用

在http://developer.android.com/guide/topics/intents/intents-filters.html中讲解了Intent和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>

效果,点击电话按钮,弹出选择应用对话框,包含我们自己定义应用:

image

发送短信的时候,调用自定义应用:

<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>

效果如下,在友录通讯录中点击发送短信按钮,弹出选择应用对话框,包含我们自定义应用:

image

  • 自定义程序调用发送短信功能:

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>

效果如下,在自己写的程序中点击按钮,调用发送短信功能:

image

选择自己的应用,进入到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连接的时候,弹出选择应用的对话框:

image

  • 过滤分享图片功能实现:

<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>

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

image



原创粉丝点击