【发布时间】:2014-02-23 18:29:49
【问题描述】:
我的 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);
【问题讨论】:
-
问题是如何设置运行配置以使 Android Studio 轻松实现这一点?我建议使用命令行参数而不是环境变量。
-
我也对此持开放态度。如何将命令行参数从 Android Studio 传递到在模拟器中运行的 Android 应用程序?哪个类在您的 android 应用程序中获取它?不知道有没有可能:stackoverflow.com/questions/20197242/…
-
哦,我以为您在谈论将信息传递给服务器进程。 Android APK 没有命令行;您可以通过 adb shell 命令将值写入 Sqlite,或者只是将文件写入本地文件系统。
-
@RostyslavRoshak 这个问题是 2014 年的,另一个是 2015 年的,那么这怎么可能是另一个的重复?另外另一个问题是关于如何向 GRADLE 传递一些东西,而这个问题是如何向 APP 的 JAVA 代码传递一些东西
标签: android android-studio environment-variables run-configuration