Ich entwickle eine Android-Anwendung, die einen Webdienst verwendet, um Daten vom Server abzurufen. Dafür habe ich drei verschiedene URLs, die auf das Entwicklungssystem, den Testserver und den Live-Server verweisen. Es ist schwierig, die URL zu ändern, wenn ich eine Anwendung zum Testen / Live geben möchte. Daher wollte ich es konfigurierbar machen, damit die Anwendung eine geeignete URL basierend auf meiner Konfigurationskonstante für den Build-Typ erhalten kann. So,
- Was ist der beste Weg, um diese Konstanten, die statische Java-Klasse oder die öffentliche Java-Schnittstelle oder die XML-Ressourcendatei beizubehalten? Wann? Warum?
- Was ergibt eine bessere Leistung? Wann? Warum?
Beispiel: XML-Ressource
<integer name="config_build_type">0</integer>
<string-array name="url_authentication">
<item >http://development.com/xxxx</item>
<item >http://test.com/xxx</item>
<item >http://example.com/xxx</item>
</string-array>
Statische Java-Konstante
public class Config {
public static final int BUILD_TYPE = 0; // 0 - development, 1 - test, 2 - live
public static final String[] URL_AUTHENTICATION = {"http://development.com/", "http://test.com/", "http://example.com"};
}