Tengo docenas de claves de la API de Facebook y Twitter y muchos otros servicios, lo que es la forma estándar para tener valores diferentes para las teclas de función de si estoy haciendo un desarrollo se basan frente a una puesta en escena construir frente a una producción a construir?¿Cómo tener diferentes entornos de compilación para Android?
11
A
Respuesta
5
Usted puede usar una bandera estática para el uso en un bloque de interruptores para definir las llaves. Eso funciona para un proyecto simple con dos o tres claves alternativas.
Si realmente tiene que muchos, a utilizar en varios proyectos, le sugiero que para añadirlos a una clase de ayuda, por lo que se minimiza el cambio de código en sus clases. Algo así como:
public class BuildHelper {
public static final int DEBUG=0;
public static final int STAGING=1;
public static final int PRODUCTION=2;
public static int BUILD;
public static String getFbKey() {
switch(BUILD) {
case DEBUG: return "xxx";
case STAGING: return "yyy";
case PRODUCTION: return "zzz";
}
return null;
}
public static String getTwitterKey() {
switch(BUILD) {
case DEBUG: return "xxx";
case STAGING: return "yyy";
case PRODUCTION: return "zzz";
}
return null;
}
}
y utilizarlo como:
public class YourClass extends Activity {
public static String FB_KEY;
public static String TWITTER_KEY;
//etc.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
BuildHelper.BUILD=BuildHelper.DEBUG; // or STAGING or PRODUCTION
FB_KEY = BuildHelper.getFbKey();
TWITTER_KEY = BuildHelper.getTwitterKey();
//etc.
}
}
0
Me gustaría mantener en archivos de propiedades separadas y hacer referencia al archivo de propiedades aplicables en su ruta de clase build script/Eclipse dependiendo de lo que está obra.
Cuestiones relacionadas
- 1. package.json para diferentes entornos?
- 2. Diferentes archivos security.yml para diferentes entornos
- 3. ¿Cómo usar diferentes archivos .settings para diferentes entornos en .NET?
- 4. Winforms de diferentes tamaños en diferentes entornos
- 5. ¿Cómo puedo instalar entornos especializados para diferentes aplicaciones de Perl?
- 6. Android en entornos integrados industriales
- 7. Despliegue de Python en Elastic Beanstalk con diferentes configuraciones para diferentes entornos
- 8. ¿Puede una aplicación de Android tener diferentes versiones para diferentes dispositivos al mismo tiempo?
- 9. Identificador de paquete diferente para configuraciones de compilación diferentes
- 10. ¿Cómo tener diferentes tipos de entrada para la misma función?
- 11. Git: configuración de la aplicación y diferentes entornos
- 12. Xcode: ¿Configurando GCC_PREPROCESSOR_DEFINITIONS para diferentes configuraciones de compilación?
- 13. Estrategias comunes para definir los granos de primavera para diferentes entornos
- 14. ¿Cómo aplicar diferentes opciones de compilación para diferentes compiladores en cmake?
- 15. ¿Cómo puedo tener dos randoms seguidos para dar valores diferentes?
- 16. Rails 3: ¿cómo detectar si la aplicación se está ejecutando en modo servidor para entornos diferentes?
- 17. ¿Cómo usar Scons para compilar los mismos objetos en diferentes entornos con Glob?
- 18. Cómo utilizar diferentes archivos en un proyecto para diferentes configuraciones de compilación - Visual Studio C# .net
- 19. ¿Cómo se manejan múltiples archivos web.config para múltiples entornos?
- 20. ¿Cómo tener diferentes soluciones se refieren a un archivo resx?
- 21. iphone: ¿Usar diferentes iconos con diferentes objetivos de compilación?
- 22. Programa diferentes diseños para diferentes versiones en Android
- 23. Solr DataImport: gestión de configuración para diferentes entornos (desarrollo/montaje/producción)
- 24. Establecer diferentes partes de un campo de formulario para tener diferentes tipos de letra utilizando iTextSharp
- 25. Tener diferentes páginas de inicio de sesión para diferentes áreas de ASP.NET MVC 3
- 26. Cómo tener diferentes partes del archivo de configuración en C#
- 27. ¿Cuál es la mejor manera de tener diferentes perfiles para diferentes tipos de usuarios en django?
- 28. Uso de Maven para entornos de despliegue múltiple (producción/desarrollo)
- 29. android listview diferentes vistas para cada elemento
- 30. Configuraciones de compilación de Android para clientes múltiples
Terminé haciendo un control en tiempo de ejecución para una cadena var similar a esta – hunterp