嘿,我有一个安卓应用程序,在其中我在后台的线程中监视Gmail服务器...这个线程无限运行...当邮箱中收到一封邮件时,我需要弹出一个toast...但是我无法获取当前活动的上下文(因为应用程序中有多个活动)...如何获取当前运行活动或者应用程序的上下文...getApplicationcontext返回null。
嘿,我有一个安卓应用程序,在其中我在后台的线程中监视Gmail服务器...这个线程无限运行...当邮箱中收到一封邮件时,我需要弹出一个toast...但是我无法获取当前活动的上下文(因为应用程序中有多个活动)...如何获取当前运行活动或者应用程序的上下文...getApplicationcontext返回null。
Activity
或Service
,两者本身都是Context
,因此调用this
就足够了。在任何监听器的回调方法中,this
将指向监听器,而不是Activity
。您可以使用任何View
引用Context
:Context context = myView.getContext();
MyRunnable = new MyRunnable(this);
)。 - AleadamResources.getSystem().getString(android.R.string.cancel)
它具有绝对的通用性,但仅支持系统资源。
使用 this 或 getApplicationContext() 来获取当前上下文。 例如,
Context mContext=this;
Context mContext=getApplicationContext();
通过调用类名,您可以获取 Activity 的上下文。例如,如果您的 Activity 是从 MainActivity
中调用的,则可以通过输入以下内容来获取上下文:
Context context = this;