android应用程序对象

use*_*973 11 android

我在android网站上看过应用程序对象,但我无法理解.

什么是应用程序对象android?
什么是应用程序对象的用途
当我们应该使用应用程序对象时

请举例说明.

谢谢.

Ash*_*ali 22

应用程序对象是一个对象,其生命周期与我们的应用程序相同.

应用程序启动时,此对象由Android Framework自动创建.

当您想要在应用程序的多个活动之间共享数据,或者想要在应用程序级别保留某些内容时.在该场景中,您可以将Application对象用作应用程序的全局存储.

例::

// this is your Application Object Class
public class MyApplication extends Application{
}
Run Code Online (Sandbox Code Playgroud)

在您的清单中提及如下::

<application android:name="yourpkgname.MyApplication"/>
Run Code Online (Sandbox Code Playgroud)

要在任何活动中访问应用程序对象.请使用以下代码.

MyApplication app = (MyApplication) getApplication();
Run Code Online (Sandbox Code Playgroud)

我认为这足以让你抓住应用程序对象的概念.

  • 应用程序类不仅可用于保留静态变量,还可以在活动类上引用它并传递动态变量. (3认同)

Ari*_*eem 5

q1. What is an Android application Object?
Run Code Online (Sandbox Code Playgroud)

A.根据开发人员文档Android应用程序对象是

"需要维护全局应用程序状态的人的基类.您可以通过在AndroidManifest.xml的标记中指定其名称来提供自己的实现,这将导致在创建应用程序/包的进程时为您实例化该类"

q2. What is the use of Application Object?
Run Code Online (Sandbox Code Playgroud)

答:Application类主要用于某些应用程序级回调和维护全局应用程序状态.

所以基本上这是一个实现性的想法

public class MyApp extends Application {

@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);
}

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

@Override
public void onLowMemory() {
    super.onLowMemory();
}

@Override
public void onTerminate() {
    super.onTerminate();
}
Run Code Online (Sandbox Code Playgroud)

}

q3. When should you use Application Object?
Run Code Online (Sandbox Code Playgroud)

A.当您想要存储数据时,例如需要从多个活动访问的全局变量,有时在应用程序中的任何位置.在这种情况下,Application对象将帮助您.