Android 如何从类运行服务?
我有一门课是这样的:Android 如何从类运行服务?,android,service,android-activity,Android,Service,Android Activity,我有一门课是这样的: 公共类ExpandableListAdapter扩展了BaseExpandableListAdapter{ 我想从这个类运行服务。但是我知道,服务只能从Activitys运行。那么解决方案是什么呢 如何启动服务并从另一个类控制它 但正如我所知,服务只能通过活动运行 不是这样。为了运行服务,您只需要一个上下文,它通常是对您的活动的引用 因此,在ExpandableListAdapter中,您只需确保构造函数接收活动的实例: public ExpandableListAdapt
公共类ExpandableListAdapter扩展了BaseExpandableListAdapter{
我想从这个类运行服务。但是我知道,服务只能从Activitys
运行。那么解决方案是什么呢
如何启动服务并从另一个类控制它
但正如我所知,服务只能通过活动运行
不是这样。为了运行服务,您只需要一个上下文,它通常是对您的活动的引用
因此,在ExpandableListAdapter中,您只需确保构造函数接收活动的实例:
public ExpandableListAdapter(Context context){
mContext = context;
}
// somewhere else
mContext.startService(theIntent);
大多数适配器都有一个上下文,因此您可以调用getContext()这将为您返回一个上下文。此适配器没有上下文,因此您应该有一个自定义构造函数,该构造函数接受上下文并调用其super。使用传入的上下文,您可以像在活动中一样调用它。
BaseExpandableListAdapter
没有getContex
方法。之后我编辑了我的答案我已经想到了这一点,你可以像对待大多数适配器一样,在构造函数中传递上下文,并将其存储为全局变量。