Компилировать флаги для разработки Eclipse / Android

Поэтому я пытаюсь понять, как я могу настроить флаги компиляции в Eclipse, поэтому, когда я разрабатываю свои приложения для Android, я могу сделать конкретную сборку. Например, у меня есть приложение на основе WebView, и я хочу иметь возможность создавать версию QA, которая будет иметь другой URL-адрес web.loadUrl("http://www.com"); Я действительно не хочу иметь 2 проекта QA и Release. Я изучал способ базовой автоматизации этого процесса. Я не хочу, чтобы каждый раз менял URL-адрес в коде перед компиляцией и тестированием приложения.

Задайте конфигурацию строки url, например, через файл свойств, к которой вы можете легко получить доступ с помощью java Properties . Убедитесь, что вам не нужно перекомпилировать приложение, если вы хотите изменить URL-адрес.

 Properties applicationConfiguration = new Properties(); applicationConfiguration.load(this.getClass().getResourceAsStream("application.properties")); String url = applicationConfiguration.getProperty("my.url", "http://defaulurl.com"); 

В SDK Tools, Revision 17 (March 2012) :

  • Добавлена ​​функция, позволяющая запускать некоторый код только в режиме отладки. Builds теперь генерирует класс BuildConfig, содержащий константу DEBUG, которая автоматически устанавливается в соответствии с вашим типом сборки. Вы можете проверить константу (BuildConfig.DEBUG) в своем коде, чтобы запускать функции только для отладки.

Я нахожу, что самый простой способ выполнить то, что вы хотите, – это проверить BuildConfig.DEBUG boolean.

Логическое значение DEBUG всегда true when developing , только когда вы экспортируете подписанный или неподписанный apk, установлено ли значение false . Вы можете использовать его как:

 if (BuildConfig.DEBUG) { // Developing myURL = "http://www.bing.com"; } // Or the other way around: if (!BuildConfig.DEBUG) { // Released (signed app) myURL = "http://www.google.com"; }