I'm building an Android application and would like to maintain a few environment variables that I can tweak depending on whether I'm in development mode or release mode. For example, I need to invoke a web service and the URL will be slightly different in either mode. I'd like to externalize this and other settings so I can change them easily based on my target deployment.
Are there any best practices or anything in the SDK to assist with this need?
Here's the method I use:
http://whereblogger.klaki.net/2009/10/choosing-android-maps-api-key-at-run.html
I use it to toggle debug logging and the maps API key.
The following solution assumes that in manifest file you always set
android:debuggable=true
while developing andandroid:debuggable=false
for application release.Now you can check this attribute's value from your code by checking the
ApplicationInfo.FLAG_DEBUGGABLE
flag in theApplicationInfo
obtained fromPackageManager
.The following code snippet could help: