Android получает контекст из класса без активности

Я создаю библиотеку с открытым исходным кодом для Android, в этой библиотеке я должен вызывать метод при запуске приложения. После вызова этого метода мне нужно получить контекст. Есть ли способ получить текущий контекст или активность из статического класса без передачи параметра Context в метод. Android отправляет намерение при запуске активности.


person kgnzpk    schedule 02.01.2015    source источник
comment
Почему вы не хотите передавать Context в качестве параметра метода? Это лучший способ сделать это.   -  person pdegand59    schedule 02.01.2015
comment
Потому что я создаю стороннюю библиотеку и не хочу, чтобы разработчикам приходилось вызывать метод внутри каждого действия onCreate.   -  person kgnzpk    schedule 02.01.2015


Ответы (1)


Передать экземпляр Context через конструктор

class YourClass {
    private Context context;

    public YourClass(Context context) {
        this.context=context;
    }    
}
person Naveen Tamrakar    schedule 02.01.2015
comment
Это решение, но мне нужно вызвать этот конструктор только один раз. После этого, когда действие изменится, параметр контекста должен измениться без вызова метода. Возможно ли это через широковещательный приемник или что-то еще. - person kgnzpk; 02.01.2015
comment
Как насчет того, если у вас есть базовый класс активности, который должен быть расширен вашими пользователями? - person Krish; 02.01.2015
comment
Несколько дней назад я обратился к моему инвестору с этой идеей, но он сказал, что нам нужно свести к минимуму усилия разработчиков по реализации нашей библиотеки. Ему не нравится эта идея, потому что существует множество типов библиотек, таких как активность Шерлока или Активность списка и т. Д. Поддерживает ли Android множественное наследование? Насколько я знаю, это невозможно. Мне нужно создать несколько базовых действий для каждого типа деятельности. Это может быть лучшим решением, если нет возможности получить контекст без вызова метода. - person kgnzpk; 02.01.2015