0

電話で連絡先を読み取り、一覧表示、追加、検索するライブラリを開発しています。Activity、cursor、およびmanagedQueryを使用して実行しました。しかし、完全に独立したライブラリを作成するには、アクティビティを使用せずにそれを行う必要があります。この uri :"content://contacts/people/id" だけで、例ごとに連絡先の名前を付けることは可能ですか? はいの場合、アクティビティを使用せずに例を挙げられますか? どんな助けでも大歓迎です。どうもありがとう。

4

1 に答える 1

0

コードを投稿していただければ、より正確な回答を提供できますが、連絡先を取得するメソッドをライブラリに実装する場合は、このメソッドのパラメーターとして Context インスタンスが必要になります。

次のようなことを試してください:

public Contact readContacts(Context context)
{
  ContentResolver resolver = context.getContentResolver();
  Cursor cursor = resolver.query(ContactsContract.Contacts.CONTENT_URI, null, null, null, null);
  ....
}

次に、ライブラリを使用するアプリでこのメソッドを次のように呼び出します。

ContactHelper.readContacts(activity);

またはこのように:

ContactHelper.readContacts(getApplicationContext());

等...

必要なすべての権限を既に持っていると思いますが、これを追加することを忘れないでください。そうしないと、連絡先を読み取ることができなくなります。

<uses-permission android:name="android.permission.READ_CONTACTS" />

ここでは、いくつかのコード例を含む連絡先の読み取りに関する詳細情報を見つけることができます: https://developer.android.com/training/contacts-provider/retrieve-names.html

于 2013-08-13T17:16:09.637 に答える