:sは背中の情報を取得するために設計されていない
BroadcastReceiver
、代わりにあなた自身ContentProviderを実装することにより、コンタクトAPIはそれを行うだけのようなパターンを実装することができます。
あなたのアプリにContentProviderを作成して、他のアプリがあなたのContentProvider上で連絡先ContentProviderと同じように照会できるようにします。
tutorialを参照してください。
あなたがたとえば、あなたがあなたのコンテンツが見えるようにURIをする方法を設計する必要があります。
vnd.android.cursor.item/my_app/contact
単一接触
についての情報を取得するためにそして、あなたはまた、あなたにあなたの<provider>
にカスタムのアクセス許可を追加することを検討すべきですまた、許可されたアプリもあなたのデータにアクセスすることができます。
オリジナル回答:
すでに以下のインテントを追加し、あなたのAndroidManifest
で、連絡先を表示するためのActivity
をお持ちの場合:
<activity
android:name="..."
...>
<intent-filter>
<action android:name="com.android.contacts.action.QUICK_CONTACT" />
<action android:name="android.provider.action.QUICK_CONTACT" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android.cursor.item/contact" />
<data android:mimeType="vnd.android.cursor.item/person" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<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>
</activity>
あなたが適切と入ってくるインテントを処理する必要がありますあなたのActivity
のこれらのMIMEタイプとデータのuris。
することはできAndroidシステムの連絡先アプリのマニフェストの例:
https://android.googlesource.com/platform/packages/apps/Contacts/+/master/AndroidManifest.xml#307
あなたのホームスクリーンに
widget
と呼ばれる「
Contact 1x1
」(デバイスによって異なる場合があります名前)を追加することによって、あなたの実装をテストすることができます
、および選択ウィジェットが起動するはずです。 このウィジェットをクリックすると、上記のインテントの1つを呼び出す必要があります。
あなたの質問を編集して、「他のアプリやユーザーが連絡先の詳細を希望するときには、自分のアプリを開く」ということを詳しく説明してください。また、放送がこれに関係していることを説明してください。 – CommonsWare