Ответ 1
getContentResolver()
- метод класса android.content.Context
, поэтому для его вызова вам определенно нужен экземпляр
контекста (например, активность или услуга).
Я хочу узнать контекст, в котором вызывается getContentResolver()
?
У меня есть такой сценарий:
У меня есть активность A, которая вызывает метод myFunc()
класса B, который не является активностью.
Итак, в классе B мне нужно использовать getContentResolver()
. Я напрямую вызывал getContentResolver()
. Он показывал ошибку. Затем я вызвал myFunc(Acitivy act)
из действия и назвал act.getContentResolver()
, который решил мою проблему. Это единственный способ вызвать getContentResolver()
, что означает, что он может использоваться в контексте с активностью или может использоваться отдельно.
getContentResolver()
- метод класса android.content.Context
, поэтому для его вызова вам определенно нужен экземпляр
контекста (например, активность или услуга).
Вы можете использовать следующее:
getApplicationContext().getContentResolver()
с соответствующим контекстом.
Метод getContentResolver()
также используется, когда вы запрашиваете Contact
, используя объект Cursor
. Я использовал getContentResolver()
для запроса приложения Android телефона Contacts
, ищущего контактную информацию с номера телефона человека, чтобы включить в мое приложение. Различные элементы запроса (как показано ниже) представляют, какие контактные данные вы хотите, и если их нужно заказать, и т.д. Вот еще один пример.
На странице Основы поставщика контента из документов Android.
// Queries the user dictionary and returns results
mCursor = getContentResolver().query(
UserDictionary.Words.CONTENT_URI, // The content URI of the words table
mProjection, // The columns to return for each row
mSelectionClause // Selection criteria
mSelectionArgs, // Selection criteria
mSortOrder); // The sort order for the returned rows
Этот работал для меня getBaseContext();
//create activity object to get activity from Activity class for use to content resolver
private final Activity ActivityObj;
//create constructor with ActivityObj to get activity from Activity class
public RecyclerViewAdapterClass(Activity activityObj) {
this.ActivityObj = activityObj;
}
ActivityObj.getContentResolver(),.....,.....,null);
Доступ к contentResolver в Kotlin, внутренняя деятельность, классы объектов и...:
Application().contentResolver
ContentResolver contentResolver = getContext(). GetContentResolver();