XML 파일은 거의 같습니다. 예를 들면 mapview api 키가 있습니다.
mapview 앱을 개발하려면 빌드 인증서를 기반으로하는 키가 필요합니다. 대부분의 사람들은 디버그 키로 빌드하고 테스트 한 다음 릴리스 키로 배포합니다. 각 빌드 키에 대해 다른 api 키를 요청해야합니다. 내 api 키를 내 리소스 파일에 모두 유지 한 다음 디버깅 할 때 필요없는 코드를 주석으로 처리합니다.
대안은 문자열 파일에 두 개의 문자열을 유지 한 다음 사용할 키를 선택하는 프로그래밍 방식을 사용하는 것입니다. AdMob은 이러한 유형의 접근 방식을 사용합니다. 즉, 테스트중인 경우 추가 요청에 테스트 장치를 추가합니다. 전 세계의 모든 사용자가 동일한 전화를 사용하여 테스트 추가 만 보길 원치 않으므로 테스트 대 릴리스 빌드의 확인을 위해 통화를 래핑해야합니다. xml 파일에 정의 된 정수 리소스 값으로 제어합니다. 이것은 C/C++ DEBUG 매크로와 유사하게 작동합니다. 리소스 값의 값으로 변경해야하지만 한 곳에서해야합니다. 또는 당신은 테스트 서버를 숨기기 위해 주석을 사용할 수 있습니다 : 예
String server = context.getString(R.string.realserver);
server = context.getString(R.string.testserver); //comment out this line prior to release
를 내가 주석/주석 방법의 팬이 아닙니다 때문에 쉽게 잊지하려면 리소스에 액세스 할 때 여러 곳을 특히.
이 문제를 해결할 더 좋은 방법이 있다면 나도 흥미가있을 것입니다.
또 다른 예는 http://stackoverflow.com/questions/1743683/distinguishing-development-mode-and-release-mode-environment-settings-on-android입니다. 여기서는 내장 플래그를 사용하지만 수정이 필요합니다 활성화/비활성화 할 매니페스트 파일의 이름입니다. – gnac