Этот ответ довольно прост.К сожалению, getContentResolver()
и любые другие методы, требующие Context
, не могут сделать это во время процесса создания приложения или инициализации.На некоторых версиях AVD это не было должным образом воспроизведено, поэтому оно работает на некоторых версиях AVD.Все, что вам нужно сделать, это переместить ваш код внутрь onCreate()
(или любой другой функции, выполняющей ПОСЛЕ конструирования), и все будет в порядке.
Примечание: Есть способы передачиПользовательский Просмотр или Активация этой информации во время создания, но есть два предостережения:
- Вы не можете сделать это для первого Компонента, запущенного в вашем Приложении, без предоставления вам другого Приложения или Компонента приложения ...
- Это МОЖЕТ привести к небезопасному коду.
В большинстве случаев лучше всего работать в рамках жизненного цикла Android.Если вам нужна информация о жизненном цикле Android, вы можете получить ее из документации по Android или из Javadoc.
Дополнительное примечание (Правка): Вам на самом деле не нужен getBaseContext()
там.Существует несколько видов Context
, и ваш Activity
считается одним.getBaseContext()
лучше всего использовать, когда вам нужно передать или удержать Context
вне жизненного цикла Android.
Надеюсь, это поможет, FuzzicalLogic