Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 使用应用程序类保存当前配置_Android - Fatal编程技术网

Android 使用应用程序类保存当前配置

Android 使用应用程序类保存当前配置,android,Android,我读过一些关于如何使用/扩展Android应用程序类的文章,但我仍然不确定是否可以根据自己的需要使用它 在我的应用程序中,启动时,我读取一个JSON配置文件。此配置文件包含有关外部设备的一些基本信息。因为我需要在其他几个片段/活动中使用此信息,所以我只需将此json文件的对象表示形式存储为我的应用程序类的成员变量 public App extends Application { private ConfigurationContainer configuration; ...

我读过一些关于如何使用/扩展Android应用程序类的文章,但我仍然不确定是否可以根据自己的需要使用它

在我的应用程序中,启动时,我读取一个JSON配置文件。此配置文件包含有关外部设备的一些基本信息。因为我需要在其他几个片段/活动中使用此信息,所以我只需将此json文件的对象表示形式存储为我的
应用程序
类的成员变量

public App extends Application {

   private ConfigurationContainer configuration;
   ...

   getters / setters
}
当我需要它时,我调用
getApplication().getConfigurationContainer()

这可以满足我的需要吗?

可以。 遵循以下步骤

1.重写onCreate()方法并加载此方法中的所有json配置

          public App extends Application {
          private ConfigurationContainer configuration;
          public void onCreate(){
                 super.onCreate();
                  // load json configuration.
               }
             // getter setter
             }
  • 在清单文件中声明此类

      <application android:name="com.packageName.App">.
    

  • 是的,在应用程序类中存储全局范围的变量(或对象)是合理的。你应该注意不要在这里存储太多的数据,因为它会消耗内存,只要你的应用程序在运行,内存就永远不会恢复

    您的概念很好,但是以这种方式使用应用程序类有一些细微差别,建议您创建一个单例类(由应用程序实例化)来存储这样的值

    以下是一个与此相关的重要示例:

     App ap = (App)getApplication();
     ConfigurationContainer conf = ap.getConfigurationContainer()