Android 在计时器中获取服务上下文,以便使用toast

Android 在计时器中获取服务上下文,以便使用toast,android,service,toast,Android,Service,Toast,我知道我可以在服务的onCreate()方法中使用它来获取服务上下文。 在我的服务中,我使用计时器做一些事情。当这件事完成后,我想做一个祝酒词。但是,我无法访问计时器中的服务上下文以生成toast。 我可以通过onCreate()方法访问上下文 如何将上下文(以便我可以使用它创建toast)传递给服务中运行的计时器 有什么想法吗?从应用程序类扩展创建自定义应用程序类。然后在oncreateinit上下文中使用自己的MyApp实例创建成员。现在,您可以随时随地获取上下文: public class

我知道我可以在服务的onCreate()方法中使用它来获取服务上下文。 在我的服务中,我使用计时器做一些事情。当这件事完成后,我想做一个祝酒词。但是,我无法访问计时器中的服务上下文以生成toast。 我可以通过onCreate()方法访问上下文

如何将上下文(以便我可以使用它创建toast)传递给服务中运行的计时器
有什么想法吗?

从应用程序类扩展创建自定义应用程序类。然后在oncreateinit上下文中使用自己的MyApp实例创建成员。现在,您可以随时随地获取上下文:

public class MyApp extends Application {
    private static MyApp mContext;

    @Override 
    public void onCreate() {
        mContext= this;
        super.onCreate();
    }

    public static MyApp getContext() {
        return mContext;
    }
}
然后您可以通过调用
MyApp.getContext()获取上下文

别忘了在清单中添加atribute name=MyApp:

...
<application
     android:icon="@drawable/ic_launcher"
     android:label="@string/application_name"
     android:name="MyApp">
...
。。。
...

从应用程序类扩展创建自定义应用程序类。然后在oncreateinit上下文中使用自己的MyApp实例创建成员。现在,您可以随时随地获取上下文:

public class MyApp extends Application {
    private static MyApp mContext;

    @Override 
    public void onCreate() {
        mContext= this;
        super.onCreate();
    }

    public static MyApp getContext() {
        return mContext;
    }
}
然后您可以通过调用
MyApp.getContext()获取上下文

别忘了在清单中添加atribute name=MyApp:

...
<application
     android:icon="@drawable/ic_launcher"
     android:label="@string/application_name"
     android:name="MyApp">
...
。。。
...

以下是为类似问题提供答案的问题:


希望这有帮助

以下是为类似问题提供答案的问题:


希望这有帮助

^+1。您还尝试过使用getApplicationContext()?^+1。您还尝试过使用getApplicationContext()吗?