50 lines
1.9 KiB
Java
50 lines
1.9 KiB
Java
package com.yanzhenjie.permission.checker;
|
|
|
|
import android.content.ContentResolver;
|
|
import android.content.ContentUris;
|
|
import android.content.ContentValues;
|
|
import android.database.Cursor;
|
|
import android.provider.ContactsContract;
|
|
|
|
/* loaded from: classes2.dex */
|
|
class ContactsWriteTest implements PermissionTest {
|
|
private ContentResolver a;
|
|
|
|
ContactsWriteTest(ContentResolver contentResolver) {
|
|
this.a = contentResolver;
|
|
}
|
|
|
|
private boolean b() {
|
|
ContentValues contentValues = new ContentValues();
|
|
contentValues.put("raw_contact_id", Long.valueOf(ContentUris.parseId(this.a.insert(ContactsContract.RawContacts.CONTENT_URI, contentValues))));
|
|
contentValues.put("data1", "PERMISSION");
|
|
contentValues.put("data2", "PERMISSION");
|
|
contentValues.put("mimetype", "vnd.android.cursor.item/name");
|
|
return ContentUris.parseId(this.a.insert(ContactsContract.Data.CONTENT_URI, contentValues)) > 0;
|
|
}
|
|
|
|
@Override // com.yanzhenjie.permission.checker.PermissionTest
|
|
public boolean a() throws Throwable {
|
|
Cursor query = this.a.query(ContactsContract.Data.CONTENT_URI, new String[]{"raw_contact_id"}, "mimetype=? and data1=?", new String[]{"vnd.android.cursor.item/name", "PERMISSION"}, null);
|
|
if (query == null) {
|
|
return false;
|
|
}
|
|
if (!query.moveToFirst()) {
|
|
query.close();
|
|
return b();
|
|
}
|
|
long j = query.getLong(0);
|
|
query.close();
|
|
return a(j);
|
|
}
|
|
|
|
private boolean a(long j) {
|
|
ContentValues contentValues = new ContentValues();
|
|
contentValues.put("raw_contact_id", Long.valueOf(j));
|
|
contentValues.put("data1", "PERMISSION");
|
|
contentValues.put("data2", "PERMISSION");
|
|
contentValues.put("mimetype", "vnd.android.cursor.item/name");
|
|
return ContentUris.parseId(this.a.insert(ContactsContract.Data.CONTENT_URI, contentValues)) > 0;
|
|
}
|
|
}
|