我的
Android应用程序对我的服务器执行一些http请求.但是有时候我正在调试在我的开发机器上运行的新api代码.我希望能够在我的代码中传递一些东西(如环境变量),如果现在我可以使用它作为来自android模拟器的api请求的主机名.
所以我正在寻找一种方式来传递像:
API_SERVER=http://10.0.2.2/myapp/
而在我的代码中,我将以某种方式使用它,例如:
final static String API_SERVER_REAL = "http://example.com/"; final String apiServerOverride = System.getenv("API_SERVER"); final String API_SERVER = (null != apiServerOverride && !apiServerOverride.isEmpty() ? apiServerOverride : API_SERVER_REAL);
解决方法
我建议使用
productFlavors.每种风味都可以包含环境特定的设置.我只需要一个名为“Environment”的类,其中包含我需要的所有公共静态final字符串,并且每个产品风格都包含该类的不同版本,并为环境设置值.