用于查看/编辑/插入联系人的 Android 意图过滤器 [英] Android Intent Filters for VIEW/EDIT/INSERT Contact

查看:26
本文介绍了用于查看/编辑/插入联系人的 Android 意图过滤器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在努力寻找一个或所有合适的过滤器.有人有吗?在底部,您可以看到意图的日志记录输出.也许它们不是公开的?

I've been trying to find one or all of the right filters. Does anyone have them? Down at the bottom you can see the logging output of the intents. Perhaps they aren't public?

在我的代码中尝试了以下方法无济于事...

Have tried the following in my code to no avail...

  <receiver android:name=".ContactsBroadcastReceiver" android:label="@string/broadcast_receiver_name" android:enabled="true">
       <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="vnd.android.cursor.dir/person" android:host="contacts" />
            <data android:mimeType="vnd.android.cursor.dir/contact" android:host="com.android.contacts" />
        </intent-filter>
        <intent-filter>
            <action android:name="com.android.contacts.action.LIST_DEFAULT" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.TAB" />
        </intent-filter>

        <intent-filter>
            <action android:name="com.android.contacts.action.LIST_CONTACTS" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.TAB" />
        </intent-filter>

        <intent-filter>
            <action android:name="com.android.contacts.action.LIST_ALL_CONTACTS" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.TAB" />
        </intent-filter>

        <intent-filter>
            <action android:name="com.android.contacts.action.LIST_CONTACTS_WITH_PHONES" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.TAB" />
        </intent-filter>

        <intent-filter android:label="@string/starredList">
            <action android:name="com.android.contacts.action.LIST_STARRED" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.TAB" />
        </intent-filter>

        <intent-filter android:label="@string/frequentList">
            <action android:name="com.android.contacts.action.LIST_FREQUENT" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.TAB" />
        </intent-filter>

        <intent-filter android:label="@string/strequentList">
            <action android:name="com.android.contacts.action.LIST_STREQUENT" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.TAB" />
        </intent-filter>

        <intent-filter>
            <action android:name="android.intent.action.INSERT_OR_EDIT" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="vnd.android.cursor.item/person" />
            <data android:mimeType="vnd.android.cursor.item/contact" />
            <data android:mimeType="vnd.android.cursor.item/raw_contact" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.EDIT" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="content" android:host="com.android.contacts" android:pathPrefix="raw_contacts" 
             android:mimeType="vnd.android.cursor.dir/contact"/>
        </intent-filter>
        <intent-filter>
            <action android:name="com.android.contacts.action.SHOW_OR_CREATE_CONTACT" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="content" android:host="com.android.contacts" android:path="contacts" 
             android:mimeType="vnd.android.cursor.dir/contact"/>
        </intent-filter>
        <intent-filter>
            <action android:name="com.android.contacts.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="content" android:host="com.android.contacts" android:pathPrefix="contacts" 
             android:mimeType="vnd.android.cursor.dir/contact"/>
        </intent-filter>
        <intent-filter>
            <action android:name="com.android.contacts.action.INSERT" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="content" android:host="com.android.contacts" android:path="contacts" 
             android:mimeType="vnd.android.cursor.dir/contact"/>
            <!--
            I/ActivityManager( 1212): Starting activity: Intent { act=android.intent.action.VIEW dat=content://com.android.contacts/contacts flg=0x10000000 cmp=com.android.contacts/.DialtactsContactsEntryActivity bnds=[324,598][480,718] }
            I/ActivityManager( 1212): Starting activity: Intent { act=android.intent.action.EDIT dat=content://com.android.contacts/raw_contacts/26 cmp=android/com.android.internal.app.ResolverActivity }
            I/ActivityManager( 1212): Starting activity: Intent { act=android.intent.action.INSERT dat=content://com.android.contacts/contacts cmp=com.android.contacts/.ui.EditContactActivity }
             -->
        </intent-filter>
  </receiver>   

推荐答案

这对我有用:

        <intent-filter android:label="Edit Contact">
            <action android:name="android.intent.action.EDIT" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="vnd.android.cursor.item/person"
                android:host="contacts" />
            <data android:mimeType="vnd.android.cursor.item/contact"
                android:host="com.android.contacts" />
            <data android:mimeType="vnd.android.cursor.item/raw_contact"
                android:host="com.android.contacts" />
        </intent-filter>
        <intent-filter android:label="Create Contact">
            <action android:name="android.intent.action.INSERT" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="vnd.android.cursor.dir/person" />
            <data android:mimeType="vnd.android.cursor.dir/contact" />
            <data android:mimeType="vnd.android.cursor.dir/raw_contact" />
        </intent-filter>
        <intent-filter android:label="View Contact">
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="vnd.android.cursor.item/person"
                android:host="contacts" />
            <data android:mimeType="vnd.android.cursor.item/contact"
                android:host="com.android.contacts" />
            <data android:mimeType="vnd.android.cursor.item/raw_contact"
                android:host="com.android.contacts" />
        </intent-filter>

这篇关于用于查看/编辑/插入联系人的 Android 意图过滤器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆