在Android编程中,Context类到底是什么?它用于什么?

我在开发者网站上读过这篇文章,但我无法清楚地理解它。


当前回答

Context是Android提供的抽象类,因此,它的任务是将应用程序代码与Android系统连接起来。通过从Context继承的类(活动、服务和应用程序),您的应用程序能够访问仅由操作系统访问的资源和功能。

当上下文后代对象被操作系统实例化(通过OS控制的实例化机制,如“意图”)时,它们将由操作系统管理,因此,它们将获得生命周期。

除此之外,将上下文作为方法调用中的参数传递,允许此方法将上下文用作与操作系统通信的通道,以便到达操作系统并要求其执行某些操作或返回某些资源。

将上下文与清单一起可视化

为了将Android环境和Manifest可视化,一个旧的呼叫中心交换机就是一个很好的类比。

基础是Android系统,连接每个正在运行的应用程序的所有应用程序组件的所有电线都出现在这里。

每个“交换机应用程序”都包含一些插件孔,它们代表应用程序的清单组件声明。因此,通过清单声明,Android系统了解到这些插件孔的存在,从而可以通过意图创建对象来插入新的上下文连接。每条连线表示一个Android上下文,该上下文连接到应用程序的某个可启动组件或应用程序本身。您可以使用现有的电线,因为它与Android系统连接,以便请求完成需要通过操作系统完成的所有事情。你可以假设当一个活动被破坏时,它的电线被拔掉了。当构建另一个活动(或另一个组件)时,一条新的电线会出现并连接到正确的清单声明的插孔。

我写了一篇完整的文章,解释了Context如何将您的应用程序与android系统相结合:

其他回答

上下文意味着Android可以知道我应该参加哪些活动。

1-Toast.makeText(上下文,“输入所有详细信息”,Toast.LNGTH_SHORT).show();它用于此。上下文上下文=ActivityName.this;

2-startActivity(新的Intent(context,LoginActivity.class));

在这个上下文中,意味着你想从哪个活动转到其他活动。context或ActivityName。这比getContext和getApplyinContext更快。

只是把它放在那里给新手;

因此,首先了解单词上下文:

在英语库中。这意味着:

“构成事件、语句或这是一个可以充分理解和评估的概念。"“紧接在和之前的书面或口头的部分跟随一个单词或一段话,并阐明其含义。"

现在对编程世界有同样的理解:

应用程序/对象当前状态的上下文。它让新创建的对象了解发生了什么。通常,您调用它来获取有关程序的另一部分(活动、包/应用程序)的信息

您可以通过调用getApplicationContext()、getContext()和getBaseContext()或this(在活动类中)来获取上下文。

要在应用程序中获取上下文Anywhere,请使用以下代码:

在android应用程序中创建新类AppContext

public class AppContext extends Application {

    private static Context context;

    public void onCreate(){
        super.onCreate();
        AppContext.context = getApplicationContext();
    }

    public static Context getAppContext() {
        return AppContext.context;
    }
}

现在,每当您希望在非活动类中使用应用程序上下文时,都可以调用此方法,这样您就有了应用程序上下文。

希望这有帮助;)

此属性声明默认情况下此布局与哪个活动关联。

android.content.Context类的实例提供到执行应用程序的android系统的连接。例如,您可以通过上下文检查当前设备显示的大小。

它还允许访问项目的资源。它是有关应用程序环境的全局信息的接口。

Context类还提供对Android服务的访问,例如报警管理器以触发基于时间的事件。

活动和服务扩展了Context类。因此,它们可以直接用于访问上下文。

有关上下文的更多详细信息,请阅读本文。我将简要解释一下。

如果你想知道什么是上下文,你必须知道它的作用。。。例如,getContext()是检索上下文的方法之一。在getContext()中,Context与Activity及其生命周期相关联。我们可以将上下文想象为“活动”背后的一层,它将与“活动”的寿命一样长。一旦活动终止,上下文也会终止。该方法为活动提供功能列表,如:

Load Resource Values,
Layout Inflation,
Start an Activity,
Show a Dialog,
Start a Service,
Bind to a Service,
Send a Broadcast,
Register BroadcastReceiver.

现在想象一下:

上下文是一个位于其组件后面的层(接口)(活动、应用程序…)和组件的生命周期访问应用程序支持的各种功能环境和Android框架。