Java 什么';部署代码后,通过触发器打开/关闭代码的最佳方式是什么?

Java 什么';部署代码后,通过触发器打开/关闭代码的最佳方式是什么?,java,android,function,Java,Android,Function,我想能够远程启用和禁用各种功能。 只需通过tcp、websockets或传统http更改变量即可。 将变量添加到应用程序中不是问题 我只是想了解一下构造代码以远程打开或关闭函数的最佳方法 我想翻转一个变量,比如说 codeAOn = true; public void codeA(){ if(codeAOn){ xyz; }else{ abc; } public void incomingVariable(Intent intent){

我想能够远程启用和禁用各种功能。 只需通过tcp、websockets或传统http更改变量即可。 将变量添加到应用程序中不是问题

我只是想了解一下构造代码以远程打开或关闭函数的最佳方法

我想翻转一个变量,比如说

  codeAOn = true;

  public void codeA(){
     if(codeAOn){
         xyz;
     }else{ abc; }


  public void incomingVariable(Intent intent){
      if intent.equals("codeAoff"){
          codeAOn = false;
  } 

我可以很快看出上面的代码在哪里变得混乱,有什么建议吗?

您可以创建一个组件,我们称之为FlagProvider,具有以下界面:

boolean getFlag(String flagName, boolean defaultValue)
这些标志可以按照您想要的任何方式设置

要检查标志,请执行以下操作:

if (flagProvider.getFlag("codeAOn", false)) { ... }
如果由于标志值来自多个源,这仍然太混乱,那么您可能希望为每个源创建一个类:一个用于硬编码标志,一个用于来自服务器的标志等,并将它们统一到提供程序下。提供者将根据您决定的源之间的优先级从其中一个源获取标志的值


您的建议称为“功能标志”或“配置”。

您能否以相同的方式给出一个设置标志的示例?您可以通过多种方式设置标志。例如,它可以位于配置文件中。