Вы можете хранить пользовательские данные в базе данных контактов.Однако «когда пользователь смотрит на контакты, которые он или она знает, с какими пользователями он может использовать мое приложение», это может оказаться невозможным, если вы думаете, что пользователи смогут видеть пользовательские данные, вставленные вами при использовании встроенных контактов Android.приложение.Вам нужно будет отобразить пользовательские данные в вашем собственном приложении.
Javadocs для класса ContactsContract.Data должны предоставить объяснение, а также статью Contacts .
Чтобы использовать это, вам необходимо получить необработанный идентификатор контакта, запросив RawContacts .
Вот пример кода, который может помочь вам начать работу ...
private void makePowerful(int rawContactId) {
ContentValues values = new ContentValues();
values.put(Privilege.RAW_CONTACT_ID, rawContactId);
values.put(Privilege.MIMETYPE, Privilege.CONTENT_ITEM_TYPE);
values.put(Privilege.PRIVILEGE_LEVEL, Privilege.TYPE_POWERFUL);
Uri uri = getContentResolver().insert(Data.CONTENT_URI, values);
}
public static final class Privilege implements ContactsContract.DataColumnsWithJoins, ContactsContract.CommonDataKinds.CommonColumns {
public static final String CONTENT_ITEM_TYPE = ContentResolver.CURSOR_ITEM_BASE_TYPE + "/my_app_privilege";
public static final int TYPE_POWERFUL = 1;
public static final int TYPE_WEAK = 2;
public static final String PRIVILEGE_LEVEL = DATA1;
private Privilege() { }
}