Привет.
для debug билда url API должен указывать на локальную виртуалку, для release - url указывает на продакшн-сервер
Тут лучше всего подойдут т.н. build config fields. Описываете его в build.gradle файле, а потом используете его как
BuildConfig.API_URL
. Пример
здесь.
для debug билда отключен Crash Reporting, для release - репорт ошибок включен
Просто инициализируете свой крэш репортинг через if вот так:
if (!BuildConfig.DEBUG) {
// инициализируем
}
В идеале хотлесь бы еще конфигурировать классы (например в debug вместо AnalyticTracker использовать AnalyticTrackerStub).
Для разных билд типов можно задавать свои наборы исходников. На том же уровне, на котором находится главный набор исходников (main), определите ещё пару наборов - debug и release. Внутри них и размещаете свой AnalyticTracker:
debug/java/com/myapp/utils/AnalyticTracker.java
и
release/java/com/myapp/utils/AnalyticTracker.java
. В зависимости от того, какой у вас сейчас выбран build variant (debug или release), Android Studio будет использовать или первую или вторую версию класса AnalyticTracker. Да, из главного набора исходников AnalyticTracker.java нужно будет удалить, иначе Android Studio не сумеет выбрать нужный класс. Более подробная документация
тут.