【问题标题】:Android: Release and testing mode?Android:发布和测试模式?
【发布时间】:2012-07-24 13:58:18
【问题描述】:

我正在做android项目,我想在运行时间上设置一些变量,怎么做?

更具体地说,我想要两个运行配置:

  1. 生产前配置:我使用 url 进行测试(例如 String url = staging.domain.net)
  2. 生产配置:我使用其他 url 的地方(例如 url = api.domain.net)

我虽然想使用 ant,但我不知道怎么做!

编辑 1:

我的应用程序使用测试 URL 访问远程服务器和服务,有时我想使用生产 URL 而不是测试 URL。那么有可能有两个运行配置设置吗?

【问题讨论】:

    标签: java android eclipse ant


    【解决方案1】:

    您可以在代码中定义这两个 URL,并根据 BuildConfig.DEBUG 决定使用哪一个。

    或者,如果您不想在代码中定义它们,您可以使用属性 (setprop prop value),然后在您的应用中检索它 (getprop prop)。

    如果您使用的是模拟器,甚至还有一个 -prop 选项

    -prop <name>=<value>           set system property on boot
    

    【讨论】:

    • 我打开了运行配置 -> 目标 -> 我已添加的附加模拟器命令行选项 (-prop url="My_url_for_testing") 但如何获取此值?
    • getprop url 从模拟器命令行应该显示该值。在您的应用中使用 Runtime.exec()。
    • 对不起,我很喜欢这个,所以它是这样的吗? java.lang.Process p = Runtime.getRuntime().exec("getprop"); BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream())); while ((line = input.readLine()) != null) { System.out.println("line); //
    • 是的,但是你可以只得到你想要的属性:Runtime.getRuntime().exec("getprop url");
    猜你喜欢
    • 2011-07-29
    • 2013-03-08
    • 2021-05-26
    • 2015-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-15
    相关资源
    最近更新 更多